@@ -83,16 +83,17 @@ func TestFindNext(t *testing.T) {
83
83
version2 := semver .MustParse ("v2.4.12" )
84
84
version3 := semver .MustParse ("v3.4.5-beta34+ads" )
85
85
for expected , next := range map [string ]semver.Version {
86
- "v0.4.5" : findNext (version0a , false , "chore: should do nothing" ),
87
- "v0.4.6" : findNext (version0a , false , "fix: inc patch" ),
88
- "v0.5.0" : findNext (version0a , false , "feat: inc minor" ),
89
- "v0.6.0" : findNext (version0b , false , "feat!: inc minor" ),
90
- "v1.2.3" : findNext (version1 , false , "chore: should do nothing" ),
91
- "v1.2.4" : findNext (version1 , true , "chore: is forcing patch, so should inc patch" ),
92
- "v1.3.0" : findNext (version1 , false , "feat: inc major" ),
93
- "v2.0.0" : findNext (version1 , true , "chore!: hashbang incs major" ),
94
- "v3.0.0" : findNext (version2 , false , "feat: something\n BREAKING CHANGE: increases major" ),
95
- "v3.5.0" : findNext (version3 , false , "feat: inc major" ),
86
+ "v0.4.5" : findNext (version0a , false , false , "chore: should do nothing" ),
87
+ "v0.4.6" : findNext (version0a , false , false , "fix: inc patch" ),
88
+ "v0.5.0" : findNext (version0a , false , false , "feat: inc minor" ),
89
+ "v1.0.0" : findNext (version0b , false , false , "feat!: inc minor" ),
90
+ "v0.6.0" : findNext (version0b , true , false , "feat!: inc minor" ),
91
+ "v1.2.3" : findNext (version1 , false , false , "chore: should do nothing" ),
92
+ "v1.2.4" : findNext (version1 , false , true , "chore: is forcing patch, so should inc patch" ),
93
+ "v1.3.0" : findNext (version1 , false , false , "feat: inc major" ),
94
+ "v2.0.0" : findNext (version1 , false , true , "chore!: hashbang incs major" ),
95
+ "v3.0.0" : findNext (version2 , false , false , "feat: something\n BREAKING CHANGE: increases major" ),
96
+ "v3.5.0" : findNext (version3 , false , false , "feat: inc major" ),
96
97
} {
97
98
t .Run (expected , func (t * testing.T ) {
98
99
is .New (t ).True (semver .MustParse (expected ).Equal (& next )) // expected and next version should match
@@ -106,13 +107,13 @@ func TestCmd(t *testing.T) {
106
107
cmd := CurrentCmd
107
108
t .Run ("version has meta" , func (t * testing.T ) {
108
109
is := is .New (t )
109
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false )
110
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false , false )
110
111
is .NoErr (err )
111
112
is .Equal ("1.2.3-pre+123" , v .String ())
112
113
})
113
114
t .Run ("version is clean" , func (t * testing.T ) {
114
115
is := is .New (t )
115
- v , err := nextVersion (cmd , semver .MustParse ("v1.2.3" ), "v1.2.3" , "doesnt matter" , "nope" , "" , true )
116
+ v , err := nextVersion (cmd , semver .MustParse ("v1.2.3" ), "v1.2.3" , "doesnt matter" , "nope" , "" , false , true )
116
117
is .NoErr (err )
117
118
is .Equal ("1.2.3" , v .String ())
118
119
})
@@ -122,25 +123,25 @@ func TestCmd(t *testing.T) {
122
123
cmd := MinorCmd
123
124
t .Run ("no meta" , func (t * testing.T ) {
124
125
is := is .New (t )
125
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false )
126
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false , false )
126
127
is .NoErr (err )
127
128
is .Equal ("1.3.0" , v .String ())
128
129
})
129
130
t .Run ("build" , func (t * testing.T ) {
130
131
is := is .New (t )
131
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "124" , "" , false )
132
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "124" , "" , false , false )
132
133
is .NoErr (err )
133
134
is .Equal ("1.3.0+124" , v .String ())
134
135
})
135
136
t .Run ("prerel" , func (t * testing.T ) {
136
137
is := is .New (t )
137
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.1" , "" , "" , false )
138
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.1" , "" , "" , false , false )
138
139
is .NoErr (err )
139
140
is .Equal ("1.3.0-alpha.1" , v .String ())
140
141
})
141
142
t .Run ("all meta" , func (t * testing.T ) {
142
143
is := is .New (t )
143
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.2" , "125" , "" , false )
144
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.2" , "125" , "" , false , false )
144
145
is .NoErr (err )
145
146
is .Equal ("1.3.0-alpha.2+125" , v .String ())
146
147
})
@@ -150,49 +151,49 @@ func TestCmd(t *testing.T) {
150
151
cmd := PatchCmd
151
152
t .Run ("no meta" , func (t * testing.T ) {
152
153
is := is .New (t )
153
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "" , "" , false )
154
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "" , "" , false , false )
154
155
is .NoErr (err )
155
156
is .Equal ("1.2.4" , v .String ())
156
157
})
157
158
t .Run ("previous had meta" , func (t * testing.T ) {
158
159
is := is .New (t )
159
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3" , "" , "" , "" , false )
160
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3" , "" , "" , "" , false , false )
160
161
is .NoErr (err )
161
162
is .Equal ("1.2.3" , v .String ())
162
163
})
163
164
t .Run ("previous had meta, force" , func (t * testing.T ) {
164
165
is := is .New (t )
165
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3" , "" , "" , "" , true )
166
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3" , "" , "" , "" , false , true )
166
167
is .NoErr (err )
167
168
is .Equal ("1.2.4" , v .String ())
168
169
})
169
170
t .Run ("previous had meta, force, add meta" , func (t * testing.T ) {
170
171
is := is .New (t )
171
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3-alpha.1+1" , "alpha.2" , "10" , "" , true )
172
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3-alpha.1+1" , "alpha.2" , "10" , "" , false , true )
172
173
is .NoErr (err )
173
174
is .Equal ("1.2.4-alpha.2+10" , v .String ())
174
175
})
175
176
t .Run ("previous had meta, change it" , func (t * testing.T ) {
176
177
is := is .New (t )
177
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3-alpha.1+1" , "alpha.2" , "10" , "" , false )
178
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3-alpha.1+1" ), "v1.2.3-alpha.1+1" , "alpha.2" , "10" , "" , false , false )
178
179
is .NoErr (err )
179
180
is .Equal ("1.2.3-alpha.2+10" , v .String ())
180
181
})
181
182
t .Run ("build" , func (t * testing.T ) {
182
183
is := is .New (t )
183
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "124" , "" , false )
184
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "124" , "" , false , false )
184
185
is .NoErr (err )
185
186
is .Equal ("1.2.4+124" , v .String ())
186
187
})
187
188
t .Run ("prerel" , func (t * testing.T ) {
188
189
is := is .New (t )
189
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "alpha.1" , "" , "" , false )
190
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "alpha.1" , "" , "" , false , false )
190
191
is .NoErr (err )
191
192
is .Equal ("1.2.4-alpha.1" , v .String ())
192
193
})
193
194
t .Run ("all meta" , func (t * testing.T ) {
194
195
is := is .New (t )
195
- v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "alpha.2" , "125" , "" , false )
196
+ v , err := nextVersion (cmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "alpha.2" , "125" , "" , false , false )
196
197
is .NoErr (err )
197
198
is .Equal ("1.2.4-alpha.2+125" , v .String ())
198
199
})
@@ -202,25 +203,25 @@ func TestCmd(t *testing.T) {
202
203
cmd := MajorCmd
203
204
t .Run ("no meta" , func (t * testing.T ) {
204
205
is := is .New (t )
205
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false )
206
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "" , "" , false , false )
206
207
is .NoErr (err )
207
208
is .Equal ("2.0.0" , v .String ())
208
209
})
209
210
t .Run ("build" , func (t * testing.T ) {
210
211
is := is .New (t )
211
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "124" , "" , false )
212
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "" , "124" , "" , false , false )
212
213
is .NoErr (err )
213
214
is .Equal ("2.0.0+124" , v .String ())
214
215
})
215
216
t .Run ("prerel" , func (t * testing.T ) {
216
217
is := is .New (t )
217
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.1" , "" , "" , false )
218
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.1" , "" , "" , false , false )
218
219
is .NoErr (err )
219
220
is .Equal ("2.0.0-alpha.1" , v .String ())
220
221
})
221
222
t .Run ("all meta" , func (t * testing.T ) {
222
223
is := is .New (t )
223
- v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.2" , "125" , "" , false )
224
+ v , err := nextVersion (cmd , ver (), "v1.2.3" , "alpha.2" , "125" , "" , false , false )
224
225
is .NoErr (err )
225
226
is .Equal ("2.0.0-alpha.2+125" , v .String ())
226
227
})
@@ -229,12 +230,12 @@ func TestCmd(t *testing.T) {
229
230
t .Run ("errors" , func (t * testing.T ) {
230
231
t .Run ("invalid build" , func (t * testing.T ) {
231
232
is := is .New (t )
232
- _ , err := nextVersion (MinorCmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "+125" , "" , false )
233
+ _ , err := nextVersion (MinorCmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "" , "+125" , "" , false , false )
233
234
is .True (err != nil )
234
235
})
235
236
t .Run ("invalid prerelease" , func (t * testing.T ) {
236
237
is := is .New (t )
237
- _ , err := nextVersion (MinorCmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "+aaa" , "" , "" , false )
238
+ _ , err := nextVersion (MinorCmd , semver .MustParse ("1.2.3" ), "v1.2.3" , "+aaa" , "" , "" , false , false )
238
239
is .True (err != nil )
239
240
})
240
241
})
0 commit comments