|
1 | 1 | using Test
|
2 |
| -using Base.BinaryPlatforms |
3 |
| -using Pkg |
4 |
| -using Pkg.Types: VersionSpec |
| 2 | +using Pkg, Base.BinaryPlatforms |
5 | 3 | using BinaryBuilderBase
|
6 | 4 | using BinaryBuilderBase: getname, getpkg, dependencify
|
7 | 5 | using JSON
|
|
19 | 17 |
|
20 | 18 | @testset "Dependencies" begin
|
21 | 19 | name = "Foo_jll"
|
22 |
| - |
23 | 20 | dep = Dependency(PackageSpec(; name = name))
|
24 | 21 | @test Dependency(name) == dep
|
25 | 22 | @test getname(dep) == name
|
| 23 | + @test getname(PackageSpec(; name = name)) == name |
26 | 24 | @test getpkg(dep) == PackageSpec(; name = name)
|
27 | 25 |
|
28 |
| - dep_version = Dependency(PackageSpec(; name = name, version = v"1")) |
29 |
| - @test getname(dep_version) == name |
30 |
| - @test getpkg(dep_version) == PackageSpec(; name = name, version = v"1") |
31 |
| - |
32 |
| - dep_vspec = Dependency(PackageSpec(; name = name, version = VersionSpec("1.1-1.4.5"))) |
33 |
| - @test getname(dep_vspec) == name |
34 |
| - @test getpkg(dep_vspec) == PackageSpec(; name = name, version = VersionSpec("1.1-1.4.5")) |
35 |
| - |
36 | 26 | build_version = v"1.2.3"
|
37 | 27 | dep_buildver = Dependency(PackageSpec(; name = name), build_version)
|
38 | 28 | @test Dependency(name, build_version) == dep_buildver
|
|
43 | 33 | build_dep = BuildDependency(PackageSpec(; name = build_name))
|
44 | 34 | @test BuildDependency(build_name) == build_dep
|
45 | 35 | @test getname(build_dep) == build_name
|
| 36 | + @test getname(PackageSpec(; name = build_name)) == build_name |
46 | 37 | @test getpkg(build_dep) == PackageSpec(; name = build_name)
|
47 | 38 |
|
48 | 39 | @testset "JSON (de)serialization" begin
|
49 | 40 | jdep = JSON.lower(dep)
|
50 |
| - @test jdep == Dict( |
51 |
| - "type" => "dependency", |
52 |
| - "name" => name, |
53 |
| - "uuid" => nothing, |
54 |
| - "version" => Dict( |
55 |
| - "ranges" => [ |
56 |
| - Dict( |
57 |
| - "lower" => Dict("t" => [0,0,0], "n" => 0), |
58 |
| - "upper" => Dict("t" => [0,0,0], "n" => 0) |
59 |
| - ) |
60 |
| - ] |
61 |
| - ) |
62 |
| - ) |
| 41 | + @test jdep == Dict("type" => "dependency", "name" => name, "uuid" => nothing, "version-major" => 0x0, "version-minor" => 0x0, "version-patch" => 0x0) |
63 | 42 | @test dependencify(jdep) == dep
|
64 | 43 |
|
65 |
| - jdep_vspec = JSON.lower(dep_vspec) |
66 |
| - @test jdep_vspec == Dict( |
67 |
| - "type" => "dependency", |
68 |
| - "name" => name, |
69 |
| - "uuid" => nothing, |
70 |
| - "version" => Dict( |
71 |
| - "ranges" => [ |
72 |
| - Dict( |
73 |
| - "lower" => Dict("t" => [1,1,0], "n" => 2), |
74 |
| - "upper" => Dict("t" => [1,4,5], "n" => 3) |
75 |
| - ) |
76 |
| - ] |
77 |
| - ) |
78 |
| - ) |
79 |
| - @test dependencify(jdep_vspec) == dep_vspec |
80 |
| - |
81 | 44 | jdep_buildver = JSON.lower(dep_buildver)
|
82 |
| - @test jdep_buildver == Dict( |
83 |
| - "type" => "dependency", |
84 |
| - "name" => name, |
85 |
| - "uuid" => nothing, |
86 |
| - "version" => Dict( |
87 |
| - "ranges" => [ |
88 |
| - Dict( |
89 |
| - "lower" => Dict("t" => [0,0,0], "n" => 0), |
90 |
| - "upper" => Dict("t" => [0,0,0], "n" => 0) |
91 |
| - ) |
92 |
| - ] |
93 |
| - ) |
94 |
| - ) |
| 45 | + @test jdep_buildver == Dict("type" => "dependency", "name" => name, "uuid" => nothing, "version-major" => 0x0, "version-minor" => 0x0, "version-patch" => 0x0) |
95 | 46 | # the build_version is currently not serialized, so the following test fails
|
96 | 47 | @test_broken dependencify(jdep_buildver) == dep_buildver
|
97 | 48 |
|
98 | 49 | jbuild_dep = JSON.lower(build_dep)
|
99 |
| - @test jbuild_dep == Dict( |
100 |
| - "type" => "builddependency", |
101 |
| - "name" => build_name, |
102 |
| - "uuid" => nothing, |
103 |
| - "version" => Dict( |
104 |
| - "ranges" => [ |
105 |
| - Dict( |
106 |
| - "lower" => Dict("t" => [0,0,0], "n" => 0), |
107 |
| - "upper" => Dict("t" => [0,0,0], "n" => 0) |
108 |
| - ) |
109 |
| - ] |
110 |
| - ) |
111 |
| - ) |
| 50 | + @test jbuild_dep == Dict("type" => "builddependency", "name" => build_name, "uuid" => nothing, "version-major" => 0x0, "version-minor" => 0x0, "version-patch" => 0x0) |
112 | 51 | @test dependencify(jbuild_dep) == build_dep
|
113 | 52 |
|
114 | 53 | full_dep = Dependency(PackageSpec(; name = "Baz_jll", uuid = "00000000-1111-2222-3333-444444444444", version = "3.1.4"))
|
115 | 54 | jfull_dep = JSON.lower(full_dep)
|
116 |
| - @test jfull_dep == Dict( |
117 |
| - "type" => "dependency", |
118 |
| - "name" => "Baz_jll", |
119 |
| - "uuid" => "00000000-1111-2222-3333-444444444444", |
120 |
| - "version" => Dict( |
121 |
| - "ranges" => [ |
122 |
| - Dict( |
123 |
| - "lower" => Dict("t" => [3,1,4], "n" => 3), |
124 |
| - "upper" => Dict("t" => [3,1,4], "n" => 3) |
125 |
| - ) |
126 |
| - ] |
127 |
| - ) |
128 |
| - ) |
| 55 | + @test jfull_dep == Dict("type" => "dependency", "name" => "Baz_jll", "uuid" => "00000000-1111-2222-3333-444444444444", "version-major" => 0x3, "version-minor" => 0x1, "version-patch" => 0x4) |
129 | 56 | @test dependencify(jfull_dep) == full_dep
|
130 | 57 | @test_throws ErrorException dependencify(Dict("type" => "git"))
|
131 | 58 | end
|
|
0 commit comments