Bug 3899: Milestone: Increase test coverage for Yangtools
[yangtools.git] / common / concepts / src / test / java / org / opendaylight / yangtools / concepts / SemVerTest.java
diff --git a/common/concepts/src/test/java/org/opendaylight/yangtools/concepts/SemVerTest.java b/common/concepts/src/test/java/org/opendaylight/yangtools/concepts/SemVerTest.java
new file mode 100644 (file)
index 0000000..6ddc906
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+package org.opendaylight.yangtools.concepts;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+
+public class SemVerTest {
+
+    @Test
+    public void testSemVer() {
+        final SemVer semVer = SemVer.create(5);
+        assertNotNull(semVer);
+
+        assertEquals(5, semVer.getMajor());
+        assertEquals(0, semVer.getMinor());
+        assertEquals(0, semVer.getPatch());
+
+        final SemVer semVer2 = SemVer.valueOf("1.2.3");
+        assertNotNull(semVer2);
+
+        assertEquals(1, semVer2.getMajor());
+        assertEquals(2, semVer2.getMinor());
+        assertEquals(3, semVer2.getPatch());
+
+        final SemVer semVer3 = SemVer.valueOf("1");
+        assertNotNull(semVer3);
+
+        assertEquals(1, semVer3.getMajor());
+        assertEquals(0, semVer3.getMinor());
+        assertEquals(0, semVer3.getPatch());
+
+        assertEquals(1, semVer2.compareTo(semVer3));
+        assertEquals(-1, semVer3.compareTo(semVer2));
+        assertEquals(0, semVer2.compareTo(semVer2));
+
+        assertTrue(semVer2.equals(semVer2));
+        assertFalse(semVer2.equals("not equal"));
+        assertFalse(semVer2.equals(semVer3));
+
+        assertEquals(semVer2.hashCode(), semVer2.hashCode());
+
+        assertEquals("1.0.0", semVer3.toString());
+    }
+}