Skip to content

Commit f35d173

Browse files
committed
add tests for forges not supporting organization style repo
Signed-off-by: teague hansen <[email protected]>
1 parent 17f4de0 commit f35d173

File tree

1 file changed

+42
-5
lines changed

1 file changed

+42
-5
lines changed

test/blackbox-tests/test-cases/source-stanza.t

Lines changed: 42 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Test a generated 'github' user repo
2121

2222
Test a generated 'gitlab' user repo
2323

24-
$ sed -i '4c\(source (gitlab user/repo))' dune-project
24+
$ sed -i '4s|.*|(source (gitlab user/repo))|' dune-project
2525
$ dune build
2626
$ cat foo.opam | grep -i gitlab
2727
homepage: "https://gitlab.com/user/repo"
@@ -30,16 +30,16 @@ Test a generated 'gitlab' user repo
3030

3131
Test a generated 'sourcehut' user repo
3232

33-
$ sed -i '4c\(source (sourcehut user/repo))' dune-project
33+
$ sed -i '4s|.*|(source (sourcehut user/repo))|' dune-project
3434
$ dune build
3535
$ cat foo.opam | grep -i sr.ht
3636
homepage: "https://sr.ht/~user/repo"
3737
bug-reports: "https://todo.sr.ht/~user/repo"
3838
dev-repo: "git+https://git.sr.ht/~user/repo"
3939

40-
Test a generated 'bitbucket' ruser repo
40+
Test a generated 'bitbucket' user repo
4141

42-
$ sed -i '4c\(source (bitbucket user/repo))' dune-project
42+
$ sed -i '4s|.*|(source (bitbucket user/repo))|' dune-project
4343
$ dune build
4444
$ cat foo.opam | grep -i bitbucket
4545
homepage: "https://bitbucket.org/user/repo"
@@ -48,9 +48,46 @@ Test a generated 'bitbucket' ruser repo
4848

4949
Test a generated 'gitlab' organization repo
5050

51-
$ sed -i '4c\(source (gitlab organization/project/repo))' dune-project
51+
$ sed -i '4s|.*|(source (gitlab organization/project/repo))|' dune-project
5252
$ dune build
5353
$ cat foo.opam | grep -i gitlab
5454
homepage: "https://gitlab.com/organization/project/repo"
5555
bug-reports: "https://gitlab.com/organization/project/repo/-/issues"
5656
dev-repo: "git+https://gitlab.com/organization/project/repo.git"
57+
58+
Test that the creation of a source stanza of the form 'org/project/repo' is
59+
disallowed by any forge type other than gitlab and that associated error
60+
messages are provided
61+
62+
Test github forge.
63+
64+
$ sed -i '4s|.*|(source (github org/proj/repo))|' dune-project
65+
$ dune build
66+
File "dune-project", line 4, characters 16-29:
67+
4 | (source (github org/proj/repo))
68+
^^^^^^^^^^^^^
69+
Error: Github repository must be of form user/repo
70+
Hint: The provided form 'org/proj/repo' is specific to Gitlab projects
71+
[1]
72+
73+
Test bitbucket forge.
74+
75+
$ sed -i '4s|.*|(source (bitbucket org/proj/repo))|' dune-project
76+
$ dune build
77+
File "dune-project", line 4, characters 19-32:
78+
4 | (source (bitbucket org/proj/repo))
79+
^^^^^^^^^^^^^
80+
Error: Bitbucket repository must be of form user/repo
81+
Hint: The provided form 'org/proj/repo' is specific to Gitlab projects
82+
[1]
83+
84+
Test sourcehut forge.
85+
86+
$ sed -i '4s|.*|(source (sourcehut org/proj/repo))|' dune-project
87+
$ dune build
88+
File "dune-project", line 4, characters 19-32:
89+
4 | (source (sourcehut org/proj/repo))
90+
^^^^^^^^^^^^^
91+
Error: Sourcehut repository must be of form user/repo
92+
Hint: The provided form 'org/proj/repo' is specific to Gitlab projects
93+
[1]

0 commit comments

Comments
 (0)