@@ -27,6 +27,7 @@ class Minitest::Test
27
27
end
28
28
29
29
def setup_repositories
30
+ # git dependencies for testing version resolution:
30
31
create_git_repository " web" , " 1.0.0" , " 1.1.0" , " 1.1.1" , " 1.1.2" , " 1.2.0" , " 2.0.0" , " 2.1.0"
31
32
create_git_repository " pg" , " 0.1.0" , " 0.2.0" , " 0.2.1" , " 0.3.0"
32
33
create_git_repository " optional" , " 0.2.0" , " 0.2.1" , " 0.2.2"
@@ -44,9 +45,18 @@ class Minitest::Test
44
45
create_git_repository " release" , " 0.2.0" , " 0.2.1" , " 0.2.2"
45
46
create_git_release " release" , " 0.3.0" , " name: release\n version: 0.3.0\n custom_dependencies:\n pg:\n git: #{ git_path(" optional" ) } \n "
46
47
48
+ # git dependencies with prereleases:
49
+ create_git_repository " unstable" , " 0.1.0" , " 0.2.0" , " 0.3.0.alpha" , " 0.3.0.beta"
50
+ create_git_repository " preview" , " 0.1.0" , " 0.2.0" , " 0.3.0.a" , " 0.3.0.b" , " 0.3.0" , " 0.4.0.a"
51
+
52
+ # path dependency:
53
+ create_path_repository " foo" , " 0.1.0"
54
+
55
+ # dependency with neither a shard.yml nor version tags:
47
56
create_git_repository " empty"
48
57
create_git_commit " empty" , " initial release"
49
58
59
+ # dependencies with postinstall scripts:
50
60
create_git_repository " post"
51
61
create_file " post" , " Makefile" , " all:\n\t touch made.txt\n "
52
62
create_git_release " post" , " 0.1.0" , " name: post\n version: 0.1.0\n scripts:\n postinstall: make\n "
@@ -55,17 +65,7 @@ class Minitest::Test
55
65
create_file " fails" , " Makefile" , " all:\n\t test -n ''\n "
56
66
create_git_release " fails" , " 0.1.0" , " name: fails\n version: 0.1.0\n scripts:\n postinstall: make\n "
57
67
58
- create_path_repository " foo" , " 0.1.0"
59
-
60
- create_path_repository " binary"
61
- create_shard " binary" , " name: binary\n version: 0.1.0\n executables:\n - foobar\n - baz\n "
62
- create_file " binary" , " bin/foobar" , " #! /usr/bin/env sh\n echo 'OK'" , perm: 0o755
63
- create_file " binary" , " bin/baz" , " #! /usr/bin/env sh\n echo 'KO'" , perm: 0o755
64
-
65
- create_git_repository " unstable" , " 0.1.0" , " 0.2.0" , " 0.3.0.alpha" , " 0.3.0.beta"
66
- create_git_repository " preview" , " 0.1.0" , " 0.2.0" , " 0.3.0.a" , " 0.3.0.b" , " 0.3.0" , " 0.4.0.a"
67
-
68
- # postinstall script with transitive dependency:
68
+ # transitive dependencies in postinstall scripts:
69
69
create_git_repository " version"
70
70
create_file " version" , " src/version.cr" , %( module Version; STRING = "version @ 0.1.0"; end)
71
71
create_git_release " version" , " 0.1.0"
@@ -82,6 +82,14 @@ scripts:
82
82
postinstall: crystal build src/version.cr
83
83
YAML
84
84
85
+ # dependencies with executables:
86
+ create_git_repository " binary"
87
+ create_file " binary" , " bin/foobar" , " #! /usr/bin/env sh\n echo 'OK'" , perm: 0o755
88
+ create_file " binary" , " bin/baz" , " #! /usr/bin/env sh\n echo 'KO'" , perm: 0o755
89
+ create_git_release " binary" , " 0.1.0" , " name: binary\n version: 0.1.0\n executables:\n - foobar\n - baz\n "
90
+ create_file " binary" , " bin/foo" , " echo 'FOO'" , perm: 0o755
91
+ create_git_release " binary" , " 0.2.0" , " name: binary\n version: 0.2.0\n executables:\n - foobar\n - baz\n - foo"
92
+
85
93
Minitest ::Test .created_repositories!
86
94
end
87
95
0 commit comments