X-Git-Url: http://git.nikiroo.be/?p=nikiroo-utils.git;a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Ftest%2FVersionTest.java;h=75e1a1cf261b4f7eaebeb931045bdebd447be118;hp=75e2cdf04fecff6afce1d2bf5a935aae5d4b231b;hb=632cc690ac07130a51a947ee0f0b2bfae10b6595;hpb=b0376a373cca5505d0ab5c620aec7821b8fe3064 diff --git a/src/be/nikiroo/utils/test/VersionTest.java b/src/be/nikiroo/utils/test/VersionTest.java index 75e2cdf..75e1a1c 100644 --- a/src/be/nikiroo/utils/test/VersionTest.java +++ b/src/be/nikiroo/utils/test/VersionTest.java @@ -51,5 +51,88 @@ class VersionTest extends TestLauncher { Version.getCurrentVersion().isEmpty()); } }); + + addTest(new TestCase("Tag version") { + @Override + public void test() throws Exception { + Version version = new Version("1.0.0-debian0"); + assertEquals("debian", version.getTag()); + assertEquals(0, version.getTagVersion()); + version = new Version("1.0.0-debian.0"); + assertEquals("debian.", version.getTag()); + assertEquals(0, version.getTagVersion()); + version = new Version("1.0.0-debian-0"); + assertEquals("debian-", version.getTag()); + assertEquals(0, version.getTagVersion()); + version = new Version("1.0.0-debian-12"); + assertEquals("debian-", version.getTag()); + assertEquals(12, version.getTagVersion()); + + // tag with no tag version + version = new Version("1.0.0-dev"); + assertEquals(1, version.getMajor()); + assertEquals(0, version.getMinor()); + assertEquals(0, version.getPatch()); + assertEquals("dev", version.getTag()); + assertEquals(-1, version.getTagVersion()); + } + }); + + addTest(new TestCase("Comparing versions") { + @Override + public void test() throws Exception { + assertEquals(true, + new Version(1, 1, 1).isNewerThan(new Version(1, 1, 0))); + assertEquals(true, + new Version(2, 0, 0).isNewerThan(new Version(1, 1, 1))); + assertEquals(true, + new Version(10, 7, 8).isNewerThan(new Version(9, 9, 9))); + assertEquals(true, + new Version(0, 0, 0).isOlderThan(new Version(0, 0, 1))); + assertEquals(1, + new Version(1, 1, 1).compareTo(new Version(0, 1, 1))); + assertEquals(-1, + new Version(0, 0, 1).compareTo(new Version(0, 1, 1))); + assertEquals(0, + new Version(0, 0, 1).compareTo(new Version(0, 0, 1))); + assertEquals(true, + new Version(0, 0, 1).equals(new Version(0, 0, 1))); + assertEquals(false, + new Version(0, 2, 1).equals(new Version(0, 0, 1))); + + assertEquals(true, + new Version(1, 0, 1, "my.tag.", 2).equals(new Version( + 1, 0, 1, "my.tag.", 2))); + assertEquals(false, + new Version(1, 0, 1, "my.tag.", 2).equals(new Version( + 1, 0, 0, "my.tag.", 2))); + assertEquals(false, + new Version(1, 0, 1, "my.tag.", 2).equals(new Version( + 1, 0, 1, "not-my.tag.", 2))); + } + }); + + addTest(new TestCase("toString") { + @Override + public void test() throws Exception { + // Check leading 0s: + Version version = new Version("01.002.4"); + assertEquals("Leading 0s not working", "1.2.4", + version.toString()); + + // Check spacing + version = new Version("1 . 2.4 "); + assertEquals("Additional spaces not working", "1.2.4", + version.toString()); + + String[] tests = new String[] { "1.0.0", "1.2.3", "1.0.0-dev", + "1.1.2-niki0" }; + for (String test : tests) { + version = new Version(test); + assertEquals("toString and back conversion failed", test, + version.toString()); + } + } + }); } }