diff --git a/src/main/java/com/github/zafarkhaja/semver/Version.java b/src/main/java/com/github/zafarkhaja/semver/Version.java index ac4c575..0ac0066 100644 --- a/src/main/java/com/github/zafarkhaja/semver/Version.java +++ b/src/main/java/com/github/zafarkhaja/semver/Version.java @@ -103,6 +103,22 @@ public class Version implements Comparable { patchVersion = patchVersion + 1; } + public boolean greaterThan(Version other) { + return compareTo(other) > 0 ? true : false; + } + + public boolean greaterThanOrEqualsTo(Version other) { + return compareTo(other) >= 0 ? true : false; + } + + public boolean lessThan(Version other) { + return compareTo(other) < 0 ? true : false; + } + + public boolean lessThanOrEqualsTo(Version other) { + return compareTo(other) <= 0 ? true : false; + } + @Override public boolean equals(Object other) { if (this == other) { diff --git a/src/test/java/com/github/zafarkhaja/semver/VersionTest.java b/src/test/java/com/github/zafarkhaja/semver/VersionTest.java index 726acd1..a820883 100644 --- a/src/test/java/com/github/zafarkhaja/semver/VersionTest.java +++ b/src/test/java/com/github/zafarkhaja/semver/VersionTest.java @@ -158,6 +158,42 @@ public class VersionTest { assertEquals(-1, version1.compareTo(version2)); } + @Test public void + shouldHaveGreaterThanConvenienceMethodReturningBoolean() { + Version version1 = new Version("2.3.7"); + Version version2 = new Version("1.3.7"); + assertTrue(version1.greaterThan(version2)); + assertFalse(version2.greaterThan(version1)); + assertFalse(version1.greaterThan(version1)); + } + + @Test public void + shouldHaveGreaterThanOrEqualsToConvenienceMethodReturningBoolean() { + Version version1 = new Version("2.3.7"); + Version version2 = new Version("1.3.7"); + assertTrue(version1.greaterThanOrEqualsTo(version2)); + assertFalse(version2.greaterThanOrEqualsTo(version1)); + assertTrue(version1.greaterThanOrEqualsTo(version1)); + } + + @Test public void + shouldHaveLessThanConvenienceMethodReturningBoolean() { + Version version1 = new Version("2.3.7"); + Version version2 = new Version("1.3.7"); + assertFalse(version1.lessThan(version2)); + assertTrue(version2.lessThan(version1)); + assertFalse(version1.lessThan(version1)); + } + + @Test public void + shouldHaveLessThanOrEqualsToConvenienceMethodReturningBoolean() { + Version version1 = new Version("2.3.7"); + Version version2 = new Version("1.3.7"); + assertFalse(version1.lessThanOrEqualsTo(version2)); + assertTrue(version2.lessThanOrEqualsTo(version1)); + assertTrue(version1.lessThanOrEqualsTo(version1)); + } + @Test public void shouldOverrideEqualsMethodForConvenience() { Version version1 = new Version("2.3.7");