/** * Indicates whether another instance of this type is exactly equal to this instance. * @param other The instance to compare to this instance. * @return {@code true} if {@code other} represents the same value as this instance; otherwise, {@code false}. */ public final boolean equalsType(@Nonnull GregorianDate other) { return compareTo(other) == 0; }
/** * Returns {@code true} if {@code left} is less than {@code right}. * @param left The instance to compare to {@code right}. * @param right The instance to compare to {@code left}. * @return {@code true} if {@code left} is less than {@code right}; otherwise, {@code false}. */ @CS2JInfo("This method implements the functionality of the overloaded operator: 'System.Boolean <(GregorianDate,GregorianDate)'") public static boolean lessThan(@Nonnull GregorianDate left, @Nonnull GregorianDate right) { return left.compareTo(right) < 0; }
/** * Returns {@code true} if {@code left} is greater than {@code right}. * @param left The instance to compare to {@code right}. * @param right The instance to compare to {@code left}. * @return {@code true} if {@code left} is greater than {@code right}; otherwise, {@code false}. */ @CS2JInfo("This method implements the functionality of the overloaded operator: 'System.Boolean >(GregorianDate,GregorianDate)'") public static boolean greaterThan(@Nonnull GregorianDate left, @Nonnull GregorianDate right) { return left.compareTo(right) > 0; }
/** * Returns {@code true} if {@code left} is less than or equal to {@code right}. * @param left The instance to compare to {@code right}. * @param right The instance to compare to {@code left}. * @return {@code true} if {@code left} is less than or equal to {@code right}; otherwise, {@code false}. */ @CS2JInfo("This method implements the functionality of the overloaded operator: 'System.Boolean <=(GregorianDate,GregorianDate)'") public static boolean lessThanOrEqual(@Nonnull GregorianDate left, @Nonnull GregorianDate right) { return left.compareTo(right) <= 0; }
/** * Returns {@code true} if {@code left} is greater than or equal to {@code right}. * @param left The instance to compare to {@code right}. * @param right The instance to compare to {@code left}. * @return {@code true} if {@code left} is greater than or equal to {@code right}; otherwise, {@code false}. */ @CS2JInfo("This method implements the functionality of the overloaded operator: 'System.Boolean >=(GregorianDate,GregorianDate)'") public static boolean greaterThanOrEqual(@Nonnull GregorianDate left, @Nonnull GregorianDate right) { return left.compareTo(right) >= 0; }
@Test public final void testEquality() { GregorianDate first = new GregorianDate(2000, 1, 1, 5, 1, 1D); GregorianDate second = new GregorianDate(2000, 1, 1, 5, 1, 1D); AssertHelper.assertEquals(first, second); Assert.assertTrue(first.equalsType(second)); Assert.assertTrue(second.equalsType(first)); Assert.assertEquals((int) 0, (int) first.compareTo(second)); Assert.assertEquals((int) 0, (int) second.compareTo(first)); second = new GregorianDate(2000, 1, 1, 6, 1, 1D); AssertHelper.assertNotEqual(first, second); Assert.assertFalse(first.equalsType(second)); Assert.assertFalse(second.equalsType(first)); AssertHelper.assertNotEqual(0, first.compareTo(second)); AssertHelper.assertNotEqual(0, second.compareTo(first)); second = new GregorianDate(2000, 2, 1, 5, 1, 1D); AssertHelper.assertNotEqual(first, second); Assert.assertFalse(first.equalsType(second)); Assert.assertFalse(second.equalsType(first)); AssertHelper.assertNotEqual(0, first.compareTo(second)); AssertHelper.assertNotEqual(0, second.compareTo(first)); AssertHelper.assertNotEqual(first, 5); }
@Test public final void testEqualityInTimePortion() { GregorianDate first = new GregorianDate(1999, 10, 10, 5, 1, 1D); GregorianDate second = new GregorianDate(1999, 10, 10, 5, 1, 1D); AssertHelper.assertEquals(first, second); Assert.assertTrue(first.equalsType(second)); Assert.assertTrue(second.equalsType(first)); Assert.assertEquals((int) 0, (int) first.compareTo(second)); Assert.assertEquals((int) 0, (int) second.compareTo(first)); second = new GregorianDate(1999, 10, 10, 6, 1, 1D); AssertHelper.assertNotEqual(first, second); Assert.assertFalse(first.equalsType(second)); Assert.assertFalse(second.equalsType(first)); AssertHelper.assertNotEqual(0, first.compareTo(second)); AssertHelper.assertNotEqual(0, second.compareTo(first)); second = new GregorianDate(1999, 10, 10, 5, 2, 1D); AssertHelper.assertNotEqual(first, second); Assert.assertFalse(first.equalsType(second)); Assert.assertFalse(second.equalsType(first)); AssertHelper.assertNotEqual(0, first.compareTo(second)); AssertHelper.assertNotEqual(0, second.compareTo(first)); second = new GregorianDate(1999, 10, 10, 5, 1, 2D); AssertHelper.assertNotEqual(first, second); Assert.assertFalse(first.equalsType(second)); Assert.assertFalse(second.equalsType(first)); AssertHelper.assertNotEqual(0, first.compareTo(second)); AssertHelper.assertNotEqual(0, second.compareTo(first)); AssertHelper.assertNotEqual(first, 5); }
@Test public final void testComparisons() { GregorianDate date = new GregorianDate(2001, 1, 1, 6, 3, 14D); GregorianDate sameDate = new GregorianDate(2001, 1, 1, 6, 3, 14D); GregorianDate laterTime = new GregorianDate(2001, 1, 1, 6, 5, 26D); GregorianDate laterDay = new GregorianDate(2001, 2, 2, 6, 3, 14D); Assert.assertTrue(GregorianDate.equals(date, sameDate)); Assert.assertTrue(GregorianDate.equals(sameDate, date)); Assert.assertTrue(GregorianDate.notEquals(date, laterTime)); Assert.assertTrue(GregorianDate.greaterThanOrEqual(date, sameDate)); Assert.assertTrue(GregorianDate.lessThanOrEqual(date, sameDate)); Assert.assertTrue(date.compareTo(sameDate) == 0); Assert.assertTrue(date.compareTo(laterDay) < 0); Assert.assertTrue(GregorianDate.lessThan(sameDate, laterTime)); Assert.assertTrue(GregorianDate.lessThanOrEqual(sameDate, laterTime)); Assert.assertTrue(GregorianDate.greaterThan(laterTime, sameDate)); Assert.assertTrue(GregorianDate.greaterThanOrEqual(laterTime, sameDate)); Object dateAsObject = new GregorianDate(2001, 1, 1, 6, 3, 15D); AssertHelper.assertNotEqual(date, dateAsObject); }
@Test public final void testComparisonsOfTimePortion() { GregorianDate gd1 = new GregorianDate(1999, 10, 10, 6, 3, 14D); GregorianDate gd2 = new GregorianDate(1999, 10, 10, 6, 3, 14D); GregorianDate gd3 = new GregorianDate(1999, 10, 10, 6, 5, 26D); Object gd4 = new GregorianDate(1999, 10, 10, 4, 2, 21D); Assert.assertTrue(GregorianDate.equals(gd1, gd2)); Assert.assertTrue(GregorianDate.equals(gd2, gd1)); Assert.assertTrue(GregorianDate.notEquals(gd1, gd3)); Assert.assertTrue(GregorianDate.greaterThanOrEqual(gd1, gd2)); Assert.assertTrue(GregorianDate.lessThanOrEqual(gd1, gd2)); Assert.assertTrue(gd1.compareTo(gd2) == 0); Assert.assertTrue(GregorianDate.lessThan(gd2, gd3)); Assert.assertTrue(GregorianDate.lessThanOrEqual(gd2, gd3)); Assert.assertTrue(GregorianDate.greaterThan(gd3, gd2)); Assert.assertTrue(GregorianDate.greaterThanOrEqual(gd3, gd2)); AssertHelper.assertNotEqual(gd1, gd4); }