66import static org .junit .Assert .*;
77
88public class VersionTest {
9-
9+
1010 @ Test
1111 public void testMinor () {
1212 assertEquals (new Version ("11.21.31.41" ).getMinor (), "31" );
@@ -17,7 +17,7 @@ public void testMinor() {
1717 assertEquals (new Version ("" ).getMinor (), "" );
1818 assertEquals (new Version ("-SNAPSHOT" ).getMinor (), "" );
1919 }
20-
20+
2121 @ Test
2222 public void testToString () {
2323 assertEquals (new Version ("11.21.31.41" ).toString (), "11.21.31.41" );
@@ -28,7 +28,7 @@ public void testToString() {
2828 assertEquals (new Version ("" ).toString (), "" );
2929 assertEquals (new Version ("1..1" ).toString (), "1..1" );
3030 }
31-
31+
3232 @ Test
3333 public void testToReleaseString () {
3434 assertEquals (new Version ("11.21.31.41-SNAPSHOT" ).toReleaseString (), "11.21.31.41" );
@@ -37,17 +37,17 @@ public void testToReleaseString() {
3737 assertEquals (new Version ("11.21" ).toReleaseString (), "11.21" );
3838 assertEquals (new Version ("11-SNAPSHOT" ).toReleaseString (), "11" );
3939 assertEquals (new Version ("-SNAPSHOT" ).toReleaseString (), "-SNAPSHOT" );
40-
40+
4141 }
42-
42+
4343 @ Test
4444 public void testSnapshot () {
4545 assertEquals (new Version ("11.21.31.41" ).getSnapshot (), "" );
4646 assertEquals (new Version ("11.21.31.41-SNAPSHOT" ).getSnapshot (), "-SNAPSHOT" );
4747 assertEquals (new Version ("11.21.31.41-jkhkjhk" ).getSnapshot (), "" );
4848 assertEquals (new Version ("-SNAPSHOT" ).getSnapshot (), "-SNAPSHOT" );
4949 }
50-
50+
5151 @ Test
5252 public void testMinorBumping () {
5353 assertEquals (new Version ("11.21.31.41" ).toPreviousMinor ().toReleaseString (), "11.21.30.41" );
@@ -73,22 +73,18 @@ public void testMinorBumping() {
7373 } catch (IllegalArgumentException e ) {
7474 }
7575 }
76-
76+
7777 @ Test
7878 public void testEmpty () {
7979 assertTrue (new Version ("" ).isEmpty ());
8080 assertFalse (new Version ("11.21.31.41" ).isEmpty ());
8181 }
82-
82+
8383 @ Test
8484 public void testEqualsAndHashcode () {
85- EqualsVerifier
86- .forClass (Version .class )
87- .withOnlyTheseFields ("verStr" )
88- .usingGetClass ()
89- .verify ();
85+ EqualsVerifier .forClass (Version .class ).withOnlyTheseFields ("verStr" ).usingGetClass ().verify ();
9086 }
91-
87+
9288 @ Test
9389 public void testIsSnapshot () {
9490 assertTrue (new Version ("11.12.13-SNAPSHOT" ).isSnapshot ());
@@ -111,7 +107,7 @@ public void testToNextPatch() {
111107 assertEquals ("11.12.14fgdfg-SNAPSHOT" , new Version ("11.12.14fgdfg-SNAPSHOT" ).toNextPatch ().toString ());
112108 assertEquals ("13.1" , new Version ("13" ).toNextPatch ().toString ());
113109 }
114-
110+
115111 @ Test
116112 public void testToPreviousPatch () {
117113 assertEquals ("11.12.12-SNAPSHOT" , new Version ("11.12.13-SNAPSHOT" ).toPreviousPatch ().toString ());
@@ -130,35 +126,35 @@ public void testIsGreaterThan() {
130126 assertTrue (new Version ("11.12.14-SNAPSHOT" ).isGreaterThan (new Version ("11.12.13-SNAPSHOT" )));
131127 assertTrue (new Version ("11.12-SNAPSHOT" ).isGreaterThan (new Version ("11.11-SNAPSHOT" )));
132128 assertTrue (new Version ("11-SNAPSHOT" ).isGreaterThan (new Version ("10-SNAPSHOT" )));
133-
129+
134130 assertFalse (new Version ("" ).isGreaterThan (new Version ("" )));
135131 assertFalse (new Version ("" ).isGreaterThan (new Version ("11.12.13" )));
136132 assertTrue (new Version ("11.12.13" ).isGreaterThan (new Version ("" )));
137133 assertTrue (new Version ("11.12.13" ).isGreaterThan (new Version ("not semantic" )));
138-
134+
139135 assertFalse (new Version ("11.12.13-SNAPSHOT" ).isGreaterThan (new Version ("11.12.14-SNAPSHOT" )));
140136 assertFalse (new Version ("11.12-SNAPSHOT" ).isGreaterThan (new Version ("11.13-SNAPSHOT" )));
141137 assertFalse (new Version ("11-SNAPSHOT" ).isGreaterThan (new Version ("12-SNAPSHOT" )));
142138 }
143-
139+
144140 @ Test
145141 public void testGetReleaseNoPatchString () {
146142 assertEquals ("11.12.13" , new Version ("11.12.13.14-SNAPSHOT" ).getReleaseNoPatchString ());
147143 assertEquals ("11.12" , new Version ("11.12.13-SNAPSHOT" ).getReleaseNoPatchString ());
148144 assertEquals ("11" , new Version ("11.12-SNAPSHOT" ).getReleaseNoPatchString ());
149145 assertEquals ("11" , new Version ("11-SNAPSHOT" ).getReleaseNoPatchString ());
150146 }
151-
147+
152148 @ Test
153149 public void testToRelease () {
154150 assertEquals (new Version ("11.21.31.41" ), new Version ("11.21.31.41-SNAPSHOT" ).toRelease ());
155151 assertEquals (new Version ("11.21.31.41" ), new Version ("11.21.31.41" ).toRelease ());
156- assertEquals (new Version ("11.21.31" ), new Version ("11.21.31" ).toRelease ());
152+ assertEquals (new Version ("11.21.31" ), new Version ("11.21.31" ).toRelease ());
157153 assertEquals (new Version ("11.21" ), new Version ("11.21" ).toRelease ());
158154 assertEquals (new Version ("11" ), new Version ("11-SNAPSHOT" ).toRelease ());
159155 assertEquals (new Version ("-SNAPSHOT" ), new Version ("-SNAPSHOT" ).toRelease ());
160156 }
161-
157+
162158 @ Test
163159 public void toSnapshotString () {
164160 assertEquals ("11.21.31.41-SNAPSHOT" , new Version ("11.21.31.41" ).toSnapshotString ());
@@ -176,7 +172,7 @@ public void toSnapshot() {
176172 assertEquals (new Version ("11-SNAPSHOT" ), new Version ("11" ).toSnapshot ());
177173 assertEquals (new Version ("asd-SNAPSHOT" ), new Version ("asd" ).toSnapshot ());
178174 }
179-
175+
180176 @ Test
181177 public void testIsExact () {
182178 assertFalse (new Version ("11.23.31.41-SNAPSHOT" ).isExact ());
@@ -185,7 +181,7 @@ public void testIsExact() {
185181 assertFalse (new Version ("" ).isExact ());
186182 assertFalse (new Version ("dfgdfg-SNAPSHOT" ).isExact ());
187183 }
188-
184+
189185 @ Test
190186 public void testSetMinor () {
191187 assertEquals (new Version ("12.13.14.15-SNAPSHOT" ), new Version ("12.13.13.15-SNAPSHOT" ).setMinor ("14" ));
@@ -195,13 +191,13 @@ public void testSetMinor() {
195191 new Version ("-SNAPSHOT" ).setMinor ("14" );
196192 fail ();
197193 } catch (IllegalStateException e ) {
198-
194+
199195 }
200196 try {
201197 new Version ("" ).setMinor ("14" );
202198 fail ();
203199 } catch (IllegalStateException e ) {
204-
200+
205201 }
206202 assertEquals (new Version ("14-SNAPSHOT" ), new Version ("12-SNAPSHOT" ).setMinor ("14" ));
207203 }
@@ -223,7 +219,20 @@ public void testSetPatch() {
223219 fail ();
224220 } catch (IllegalStateException e ) {
225221 }
222+ }
226223
224+ @ Test
225+ public void testToReleaseZeroPatch () {
226+ assertEquals (new Version ("11.21.31.0" ), new Version ("11.21.31.41-SNAPSHOT" ).toReleaseZeroPatch ());
227+ assertEquals (new Version ("11.21.31.0" ), new Version ("11.21.31.41" ).toReleaseZeroPatch ());
228+ assertEquals (new Version ("11.21.0" ), new Version ("11.21.31" ).toReleaseZeroPatch ());
229+ assertEquals (new Version ("11.0" ), new Version ("11.21" ).toReleaseZeroPatch ());
230+ assertEquals (new Version ("11.0" ), new Version ("11-SNAPSHOT" ).toReleaseZeroPatch ());
231+ try {
232+ assertEquals (new Version ("-SNAPSHOT" ), new Version ("-SNAPSHOT" ).toReleaseZeroPatch ());
233+ fail ();
234+ } catch (IllegalStateException e ) {
227235
236+ }
228237 }
229238}
0 commit comments