aboutsummaryrefslogtreecommitdiffstats
path: root/component/src/test/java/com/yahoo/component/VersionTestCase.java
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
committerJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
commit72231250ed81e10d66bfe70701e64fa5fe50f712 (patch)
tree2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /component/src/test/java/com/yahoo/component/VersionTestCase.java
Publish
Diffstat (limited to 'component/src/test/java/com/yahoo/component/VersionTestCase.java')
-rw-r--r--component/src/test/java/com/yahoo/component/VersionTestCase.java81
1 files changed, 81 insertions, 0 deletions
diff --git a/component/src/test/java/com/yahoo/component/VersionTestCase.java b/component/src/test/java/com/yahoo/component/VersionTestCase.java
new file mode 100644
index 00000000000..1d28de853a8
--- /dev/null
+++ b/component/src/test/java/com/yahoo/component/VersionTestCase.java
@@ -0,0 +1,81 @@
+// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.component;
+
+import com.yahoo.text.Utf8Array;
+import com.yahoo.text.Utf8String;
+
+/**
+ * @author bratseth
+ */
+public class VersionTestCase extends junit.framework.TestCase {
+
+ public void testPrimitiveCreation() {
+ Version version=new Version(1,2,3,"qualifier");
+ assertEquals(1,version.getMajor());
+ assertEquals(2,version.getMinor());
+ assertEquals(3,version.getMicro());
+ assertEquals("qualifier",version.getQualifier());
+ }
+
+ public void testUnderspecifiedPrimitiveCreation() {
+ Version version=new Version(1);
+ assertEquals(1,version.getMajor());
+ assertEquals(1,version.getMajor());
+ assertEquals(0,version.getMinor());
+ assertEquals(0,version.getMicro());
+ assertEquals("",version.getQualifier());
+ }
+
+ public void testStringCreation() {
+ Version version=new Version("1.2.3.qualifier");
+ assertEquals(1,version.getMajor());
+ assertEquals(2,version.getMinor());
+ assertEquals(3,version.getMicro());
+ assertEquals("qualifier",version.getQualifier());
+ }
+ public void testUtf8StringCreation() {
+ Version version=new Version((Utf8Array)new Utf8String("1.2.3.qualifier"));
+ assertEquals(1,version.getMajor());
+ assertEquals(2,version.getMinor());
+ assertEquals(3,version.getMicro());
+ assertEquals("qualifier",version.getQualifier());
+ }
+
+ public void testUnderspecifiedStringCreation() {
+ Version version=new Version("1");
+ assertEquals(1,version.getMajor());
+ assertEquals(0,version.getMinor());
+ assertEquals(0,version.getMicro());
+ assertEquals("",version.getQualifier());
+ }
+
+ public void testEquality() {
+ assertEquals(new Version(),Version.emptyVersion);
+ assertEquals(new Version(),new Version(""));
+ assertEquals(new Version(0,0,0),Version.emptyVersion);
+ assertEquals(new Version(1),new Version("1"));
+ assertEquals(new Version(1,2),new Version("1.2"));
+ assertEquals(new Version(1,2,3),new Version("1.2.3"));
+ assertEquals(new Version(1,2,3,"qualifier"),new Version("1.2.3.qualifier"));
+ }
+
+ public void testToString() {
+ assertEquals("",new Version().toString());
+ assertEquals("1",new Version(1).toString());
+ assertEquals("1.2",new Version(1,2).toString());
+ assertEquals("1.2.3",new Version(1,2,3).toString());
+ assertEquals("1.2.3.qualifier",new Version(1,2,3,"qualifier").toString());
+ }
+
+ public void testOrder() {
+ assertTrue(new Version("1.2.3").compareTo(new Version("1.2.3"))==0);
+ assertTrue(new Version("1.2.3").compareTo(new Version("1.2.4"))<0);
+ assertTrue(new Version("1.2.3").compareTo(new Version("1.2.2"))>0);
+
+ assertTrue(new Version("1.2.3").compareTo(new Version("2"))<0);
+ assertTrue(new Version("1.2.3").compareTo(new Version("1.3"))<0);
+
+ assertTrue(new Version("1.0.0").compareTo(new Version("1"))==0);
+ }
+
+}