Add convenience methods for comparisons

This commit is contained in:
Zafar Khaja 2012-11-20 22:23:32 +04:00
parent d670f15b16
commit 6bca0180c6
2 changed files with 52 additions and 0 deletions

View File

@ -103,6 +103,22 @@ public class Version implements Comparable<Version> {
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) {

View File

@ -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");