package org.ovirt.engine.core.compat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; public class VersionTest { @Test public void testToString() { assertEquals("1.0", new Version("1.0").toString()); assertEquals("1.0", new Version("1.0").toString()); assertEquals("1.2.3", new Version(1, 2, 3).toString()); } @Test public void equals() { assertEquals(new Version(), new Version()); assertEquals(new Version(1, 2), new Version(1, 2)); 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, 4), new Version("1.2.3.4")); // nulls and other data types assertFalse(new Version().equals(null)); assertFalse(new Version().equals("foo")); assertFalse(new Version().equals(1d)); } @Test public void compare() { assertTrue(Version.v3_6.compareTo(Version.v4_0) < 0); assertTrue(Version.v4_0.compareTo(Version.v3_6) > 0); assertTrue(Version.v3_6.compareTo(new Version("3.6")) == 0); } @Test public void biggerThan() { assertFalse(Version.v3_6.greater(Version.v4_0)); assertTrue(Version.v4_0.greater(Version.v3_6)); } @Test public void smallerThan() { assertTrue(Version.v3_6.less(Version.v4_0)); assertFalse(Version.v4_0.less(Version.v3_6)); } @Test public void biggerThanOrEquals() { assertFalse(Version.v3_6.greaterOrEquals(Version.v4_0)); assertTrue(Version.v4_0.greaterOrEquals(Version.v3_6)); assertTrue(Version.v4_0.greaterOrEquals(new Version("3.6"))); } @Test public void smallerThanOrEquals() { assertTrue(Version.v3_6.lessOrEquals(new Version("3.6"))); assertTrue(Version.v3_6.lessOrEquals(Version.v4_0)); assertFalse(Version.v4_0.lessOrEquals(Version.v3_6)); } }