public void testSetInterval_RInterval3() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setInterval(null);
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
 public void testSePeriodBeforeEnd_RI2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setPeriodBeforeEnd(new Period(-1L));
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
 public void testSetEnd_RI2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setEnd(new Instant(TEST_TIME1 - 1));
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
 public void testSeDurationAfterStart_long2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setDurationAfterStart(-1);
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
 public void testSetEndMillis_long2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setEndMillis(TEST_TIME1 - 1);
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
 public void testSeDurationBeforeEnd_RI2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   try {
     test.setDurationBeforeEnd(new Duration(-1));
     fail();
   } catch (IllegalArgumentException ex) {
   }
 }
  // -----------------------------------------------------------------------
  public void testToPeriod_PeriodType1() {
    DateTime dt1 = new DateTime(2004, 6, 9, 7, 8, 9, 10, COPTIC_PARIS);
    DateTime dt2 = new DateTime(2005, 8, 13, 12, 14, 16, 18, COPTIC_PARIS);
    MutableInterval base = new MutableInterval(dt1, dt2);

    Period test = base.toPeriod(null);
    Period expected = new Period(dt1, dt2, PeriodType.standard());
    assertEquals(expected, test);
  }
  public void testToPeriod_PeriodType2() {
    DateTime dt1 = new DateTime(2004, 6, 9, 7, 8, 9, 10);
    DateTime dt2 = new DateTime(2005, 8, 13, 12, 14, 16, 18);
    MutableInterval base = new MutableInterval(dt1, dt2);

    Period test = base.toPeriod(PeriodType.yearWeekDayTime());
    Period expected = new Period(dt1, dt2, PeriodType.yearWeekDayTime());
    assertEquals(expected, test);
  }
  public void testIsAfterNow() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1 - 1);
    assertEquals(true, test.isAfterNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1);
    assertEquals(false, test.isAfterNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1 + 1);
    assertEquals(false, test.isAfterNow());
  }
 // -----------------------------------------------------------------------
 public void testGetMillis() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   assertEquals(TEST_TIME1, test.getStartMillis());
   assertEquals(TEST_TIME1, test.getStart().getMillis());
   assertEquals(TEST_TIME2, test.getEndMillis());
   assertEquals(TEST_TIME2, test.getEnd().getMillis());
   assertEquals(TEST_TIME2 - TEST_TIME1, test.toDurationMillis());
   assertEquals(TEST_TIME2 - TEST_TIME1, test.toDuration().getMillis());
 }
 public void testContains_RI() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   assertEquals(true, test.contains(new Instant(TEST_TIME1)));
   assertEquals(false, test.contains(new Instant(TEST_TIME1 - 1)));
   assertEquals(true, test.contains(new Instant(TEST_TIME1 + (TEST_TIME2 - TEST_TIME1) / 2)));
   assertEquals(false, test.contains(new Instant(TEST_TIME2)));
   assertEquals(true, test.contains(new Instant(TEST_TIME2 - 1)));
   assertEquals(true, test.contains((ReadableInstant) null));
 }
  public void testIsAfter_RInterval() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    assertEquals(true, test.isAfter(new Interval(Long.MIN_VALUE, TEST_TIME1 - 1)));
    assertEquals(true, test.isAfter(new Interval(Long.MIN_VALUE, TEST_TIME1)));
    assertEquals(false, test.isAfter(new Interval(Long.MIN_VALUE, TEST_TIME1 + 1)));

    assertEquals(false, test.isAfter(new Interval(TEST_TIME2 - 1, Long.MAX_VALUE)));
    assertEquals(false, test.isAfter(new Interval(TEST_TIME2, Long.MAX_VALUE)));
    assertEquals(false, test.isAfter(new Interval(TEST_TIME2 + 1, Long.MAX_VALUE)));

    assertEquals(false, test.isAfter((ReadableInterval) null));
  }
  public void testIsAfter_RI() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    assertEquals(true, test.isAfter(new Instant(TEST_TIME1 - 1)));
    assertEquals(false, test.isAfter(new Instant(TEST_TIME1)));
    assertEquals(false, test.isAfter(new Instant(TEST_TIME1 + 1)));

    assertEquals(false, test.isAfter(new Instant(TEST_TIME2 - 1)));
    assertEquals(false, test.isAfter(new Instant(TEST_TIME2)));
    assertEquals(false, test.isAfter(new Instant(TEST_TIME2 + 1)));

    assertEquals(false, test.isAfter((ReadableInstant) null));
  }
  // -----------------------------------------------------------------------
  public void testIsAfter_long() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    assertEquals(true, test.isAfter(TEST_TIME1 - 1));
    assertEquals(false, test.isAfter(TEST_TIME1));
    assertEquals(false, test.isAfter(TEST_TIME1 + 1));

    assertEquals(false, test.isAfter(TEST_TIME2 - 1));
    assertEquals(false, test.isAfter(TEST_TIME2));
    assertEquals(false, test.isAfter(TEST_TIME2 + 1));
  }
 // -----------------------------------------------------------------------
 public void testContains_long() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   assertEquals(true, test.contains(TEST_TIME1));
   assertEquals(false, test.contains(TEST_TIME1 - 1));
   assertEquals(true, test.contains(TEST_TIME1 + (TEST_TIME2 - TEST_TIME1) / 2));
   assertEquals(false, test.contains(TEST_TIME2));
   assertEquals(true, test.contains(TEST_TIME2 - 1));
 }
  public void testContainsNow() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1);
    assertEquals(true, test.containsNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1 - 1);
    assertEquals(false, test.containsNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME1 + (TEST_TIME2 - TEST_TIME1) / 2);
    assertEquals(true, test.containsNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME2);
    assertEquals(false, test.containsNow());
    DateTimeUtils.setCurrentMillisFixed(TEST_TIME2 - 1);
    assertEquals(true, test.containsNow());
  }
 // -----------------------------------------------------------------------
 public void testToMutableInterval1() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2, COPTIC_PARIS);
   MutableInterval result = test.toMutableInterval();
   assertEquals(test, result);
   assertNotSame(test, result);
 }
 // -----------------------------------------------------------------------
 public void testSetEnd_RI1() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setEnd(new Instant(TEST_TIME2 + 1));
   assertEquals(TEST_TIME1, test.getStartMillis());
   assertEquals(TEST_TIME2 + 1, test.getEndMillis());
 }
  public void testOverlaps_RInterval() {
    MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);

    assertEquals(false, test.overlaps(new Interval(TEST_TIME1, TEST_TIME1)));
    assertEquals(false, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME1)));

    assertEquals(true, test.overlaps(new Interval(TEST_TIME1, TEST_TIME1 + 1)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME1 + 1)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME1 + 1, TEST_TIME1 + 1)));

    assertEquals(true, test.overlaps(new Interval(TEST_TIME1, TEST_TIME2)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME2)));
    assertEquals(
        true, test.overlaps(new Interval(TEST_TIME1 + (TEST_TIME2 - TEST_TIME1) / 2, TEST_TIME2)));
    assertEquals(false, test.overlaps(new Interval(TEST_TIME2, TEST_TIME2)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME2 - 1, TEST_TIME2)));

    assertEquals(true, test.overlaps(new Interval(TEST_TIME1, TEST_TIME2 + 1)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME2 + 1)));
    assertEquals(
        true,
        test.overlaps(new Interval(TEST_TIME1 + (TEST_TIME2 - TEST_TIME1) / 2, TEST_TIME2 + 1)));
    assertEquals(false, test.overlaps(new Interval(TEST_TIME2, TEST_TIME2 + 1)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME2 - 1, TEST_TIME2 + 1)));

    assertEquals(false, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME1 - 1)));
    assertEquals(false, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME1)));
    assertEquals(true, test.overlaps(new Interval(TEST_TIME1 - 1, TEST_TIME1 + 1)));

    assertEquals(true, test.overlaps((ReadableInterval) null));

    MutableInterval empty = new MutableInterval(TEST_TIME1, TEST_TIME1);
    assertEquals(false, empty.overlaps(empty));
    assertEquals(false, empty.overlaps(test));
    assertEquals(false, test.overlaps(empty));
  }
 // -----------------------------------------------------------------------
 public void testSetDurationBeforeEnd_RI1() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setDurationBeforeEnd(new Duration(123L));
   assertEquals(TEST_TIME2 - 123L, test.getStartMillis());
   assertEquals(TEST_TIME2, test.getEndMillis());
 }
  public void testEqualsHashCode() {
    MutableInterval test1 = new MutableInterval(TEST_TIME1, TEST_TIME2);
    MutableInterval test2 = new MutableInterval(TEST_TIME1, TEST_TIME2);
    assertEquals(true, test1.equals(test2));
    assertEquals(true, test2.equals(test1));
    assertEquals(true, test1.equals(test1));
    assertEquals(true, test2.equals(test2));
    assertEquals(true, test1.hashCode() == test2.hashCode());
    assertEquals(true, test1.hashCode() == test1.hashCode());
    assertEquals(true, test2.hashCode() == test2.hashCode());

    MutableInterval test3 = new MutableInterval(TEST_TIME_NOW, TEST_TIME2);
    assertEquals(false, test1.equals(test3));
    assertEquals(false, test2.equals(test3));
    assertEquals(false, test3.equals(test1));
    assertEquals(false, test3.equals(test2));
    assertEquals(false, test1.hashCode() == test3.hashCode());
    assertEquals(false, test2.hashCode() == test3.hashCode());

    MutableInterval test4 = new MutableInterval(TEST_TIME1, TEST_TIME2, GJChronology.getInstance());
    assertEquals(true, test4.equals(test4));
    assertEquals(false, test1.equals(test4));
    assertEquals(false, test2.equals(test4));
    assertEquals(false, test4.equals(test1));
    assertEquals(false, test4.equals(test2));
    assertEquals(false, test1.hashCode() == test4.hashCode());
    assertEquals(false, test2.hashCode() == test4.hashCode());

    MutableInterval test5 = new MutableInterval(TEST_TIME1, TEST_TIME2);
    assertEquals(true, test1.equals(test5));
    assertEquals(true, test2.equals(test5));
    assertEquals(false, test3.equals(test5));
    assertEquals(true, test5.equals(test1));
    assertEquals(true, test5.equals(test2));
    assertEquals(false, test5.equals(test3));
    assertEquals(true, test1.hashCode() == test5.hashCode());
    assertEquals(true, test2.hashCode() == test5.hashCode());
    assertEquals(false, test3.hashCode() == test5.hashCode());

    assertEquals(false, test1.equals("Hello"));
    assertEquals(true, test1.equals(new MockInterval()));
    assertEquals(false, test1.equals(new DateTime(TEST_TIME1)));
  }
 public void testSetDurationAfterStart_RI3() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setDurationAfterStart(null);
   assertEquals(TEST_TIME1, test.getStartMillis());
   assertEquals(TEST_TIME1, test.getEndMillis());
 }
 // -----------------------------------------------------------------------
 public void testToString() {
   DateTime dt1 = new DateTime(2004, 6, 9, 7, 8, 9, 10, DateTimeZone.UTC);
   DateTime dt2 = new DateTime(2005, 8, 13, 12, 14, 16, 18, DateTimeZone.UTC);
   MutableInterval test = new MutableInterval(dt1, dt2);
   assertEquals("2004-06-09T07:08:09.010Z/2005-08-13T12:14:16.018Z", test.toString());
 }
 public void testSetPeriodBeforeEnd_RI3() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setPeriodBeforeEnd(null);
   assertEquals(TEST_TIME2, test.getStartMillis());
   assertEquals(TEST_TIME2, test.getEndMillis());
 }
 // -----------------------------------------------------------------------
 public void testSetStartMillis_long1() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setStartMillis(TEST_TIME1 - 1);
   assertEquals(TEST_TIME1 - 1, test.getStartMillis());
   assertEquals(TEST_TIME2, test.getEndMillis());
 }
 public void testGetDuration2() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME1);
   assertSame(Duration.ZERO, test.toDuration());
 }
 // -----------------------------------------------------------------------
 public void testSetPeriodAfterStart_RI1() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setPeriodAfterStart(new Period(123L));
   assertEquals(TEST_TIME1, test.getStartMillis());
   assertEquals(TEST_TIME1 + 123L, test.getEndMillis());
 }
 public void testClone() {
   MutableInterval test = new MutableInterval(123L, 456L, COPTIC_PARIS);
   MutableInterval cloned = (MutableInterval) test.clone();
   assertEquals(test, cloned);
   assertNotSame(test, cloned);
 }
 public void testSetInterval_RI_RI5() {
   MutableInterval test = new MutableInterval(TEST_TIME1, TEST_TIME2);
   test.setInterval(null, null);
   assertEquals(TEST_TIME_NOW, test.getStartMillis());
   assertEquals(TEST_TIME_NOW, test.getEndMillis());
 }