@@ -2,6 +2,70 @@ package pkgchecker
2
2
3
3
import "testing"
4
4
5
+ func Test_versionsExistInCrates (t * testing.T ) {
6
+ t .Parallel ()
7
+
8
+ type args struct {
9
+ pkg string
10
+ versions []string
11
+ }
12
+ tests := []struct {
13
+ name string
14
+ args args
15
+ wantErr bool
16
+ }{
17
+ {
18
+ name : "multiple_versions_which_all_exist" ,
19
+ args : args {
20
+ pkg : "defmt" ,
21
+ versions : []string {"0.0.0" , "0.3.0" , "0.3.100-rc.1" , "1.0.0-rc.1" , "1.0.1" },
22
+ },
23
+ wantErr : false ,
24
+ },
25
+ {
26
+ name : "multiple_versions_with_one_that_does_not_exist" ,
27
+ args : args {
28
+ pkg : "defmt" ,
29
+ versions : []string {"1.1" , "0.3.6-beta" , "1.1.2" },
30
+ },
31
+ wantErr : true ,
32
+ },
33
+ {
34
+ name : "an_invalid_version" ,
35
+ args : args {
36
+ pkg : "defmt" ,
37
+ versions : []string {"!" },
38
+ },
39
+ wantErr : true ,
40
+ },
41
+ {
42
+ name : "an_invalid_package" ,
43
+ args : args {
44
+ pkg : "!" ,
45
+ versions : []string {"1.0.0" },
46
+ },
47
+ wantErr : true ,
48
+ },
49
+ {
50
+ name : "a_package_that_does_not_exit" ,
51
+ args : args {
52
+ pkg : "not-a-real-package-hopefully" ,
53
+ versions : []string {"1.0.0" },
54
+ },
55
+ wantErr : true ,
56
+ },
57
+ }
58
+ for _ , tt := range tests {
59
+ t .Run (tt .name , func (t * testing.T ) {
60
+ t .Parallel ()
61
+
62
+ if err := versionsExistInCrates (tt .args .pkg , tt .args .versions ); (err != nil ) != tt .wantErr {
63
+ t .Errorf ("versionsExistInCrates() error = %v, wantErr %v" , err , tt .wantErr )
64
+ }
65
+ })
66
+ }
67
+ }
68
+
5
69
func Test_versionsExistInGo (t * testing.T ) {
6
70
type args struct {
7
71
pkg string
@@ -115,52 +179,26 @@ func Test_versionsExistInNpm(t *testing.T) {
115
179
wantErr bool
116
180
}{
117
181
{
118
- name : "multiple_versions_which_all_exist " ,
182
+ name : "an unreleased package " ,
119
183
args : args {
120
- pkg : "semver " ,
121
- versions : [] string { "1.0.1" , "2.0.0-beta" , "5.7.1" } ,
184
+ pkg : "github.com/nanobox-io/golang-nanoauth " ,
185
+ versions : nil ,
122
186
},
123
187
wantErr : false ,
124
188
},
125
189
{
126
- name : "multiple_versions_with_one_that_does_not_exist" ,
127
- args : args {
128
- pkg : "semver" ,
129
- versions : []string {"1.1" , "2.0.0-beta1" , "3.1.5" , "5.1rc1" },
130
- },
131
- wantErr : true ,
132
- },
133
- {
134
- name : "an_invalid_version" ,
135
- args : args {
136
- pkg : "semver" ,
137
- versions : []string {"!" },
138
- },
139
- wantErr : true ,
140
- },
141
- {
142
- name : "an_invalid_package" ,
143
- args : args {
144
- pkg : "!" ,
145
- versions : []string {"1.0.0" },
146
- },
147
- wantErr : true ,
148
- },
149
- {
150
- name : "a_package_that_does_not_exit" ,
190
+ name : "a released package" ,
151
191
args : args {
152
- pkg : "not-a-real-package-hopefully " ,
153
- versions : []string {"1.0.0 " },
192
+ pkg : "github.com/oauth2-proxy/oauth2-proxy " ,
193
+ versions : []string {"1.1.1 " },
154
194
},
155
- wantErr : true ,
195
+ wantErr : false ,
156
196
},
157
197
}
158
198
for _ , tt := range tests {
159
199
t .Run (tt .name , func (t * testing.T ) {
160
- t .Parallel ()
161
-
162
- if err := versionsExistInNpm (tt .args .pkg , tt .args .versions ); (err != nil ) != tt .wantErr {
163
- t .Errorf ("versionsExistInNpm() error = %v, wantErr %v" , err , tt .wantErr )
200
+ if err := versionsExistInGo (tt .args .pkg , tt .args .versions ); (err != nil ) != tt .wantErr {
201
+ t .Errorf ("versionsExistInGo() error = %v, wantErr %v" , err , tt .wantErr )
164
202
}
165
203
})
166
204
}
0 commit comments