@Test public void constructorFactoryMethodsValid() { TimeInstant ts = TimeInstantBuilder.fromNanos(999123456789L); Assert.assertEquals(456789L, ts.getFractalMillisInNanos()); Assert.assertEquals(123456789L, ts.getFractalSecondsInNanos()); Assert.assertEquals(999123456789L, ts.getNanos()); Assert.assertEquals(999123L, ts.getMillis()); Assert.assertEquals(999L, ts.getSeconds()); ts = TimeInstantBuilder.fromMillis(999123L); Assert.assertEquals(0L, ts.getFractalMillisInNanos()); Assert.assertEquals(123000000L, ts.getFractalSecondsInNanos()); Assert.assertEquals(999123000000L, ts.getNanos()); Assert.assertEquals(999123L, ts.getMillis()); Assert.assertEquals(999L, ts.getSeconds()); ts = TimeInstantBuilder.fromSeconds(999L); Assert.assertEquals(0L, ts.getFractalMillisInNanos()); Assert.assertEquals(0L, ts.getFractalSecondsInNanos()); Assert.assertEquals(999000000000L, ts.getNanos()); Assert.assertEquals(999000L, ts.getMillis()); Assert.assertEquals(999L, ts.getSeconds()); }
@Test public void minusSecondsTest() { TimeInstant t = TimeInstantBuilder.fromSeconds(222L); TimeInstant result = t.minusSeconds(200L); Assert.assertTrue(result.getSeconds() == 22L); t = TimeInstantBuilder.fromNanos(5123456789L); result = t.minusSeconds(5L); Assert.assertTrue(result.getSeconds() == 0L); Assert.assertTrue(result.getFractalSecondsInNanos() == 123456789L); }
@Test public void testPlusDuration() { final TimeInstant ti = TimeInstantBuilder.fromMillis(0L); TimeInstant plusTi = ti.plusDuration(Duration.ZERO); Assert.assertEquals(ti, plusTi); plusTi = ti.plusDuration(Duration.standardSeconds(1L)); Assert.assertEquals(TimeInstantBuilder.fromSeconds(1L), plusTi); plusTi = ti.plusDuration(Duration.standardHours(1L)).plusNanosPerSecond(123L); Assert.assertEquals(TimeInstantBuilder.fromNanos(3600000000123L), plusTi); }
@Test public void constructorFactoryMethodsValidZero() { TimeInstant ts = TimeInstantBuilder.fromNanos(0L); Assert.assertEquals(ts.getFractalMillisInNanos(), 0L); Assert.assertEquals(ts.getMillis(), 0L); Assert.assertEquals(ts.getSeconds(), 0L); ts = TimeInstantBuilder.fromMillis(0L); Assert.assertEquals(ts.getFractalMillisInNanos(), 0L); Assert.assertEquals(ts.getMillis(), 0L); Assert.assertEquals(ts.getSeconds(), 0L); ts = TimeInstantBuilder.fromSeconds(0L); Assert.assertEquals(ts.getFractalMillisInNanos(), 0L); Assert.assertEquals(ts.getMillis(), 0L); Assert.assertEquals(ts.getSeconds(), 0L); }
@Test(expected = IllegalArgumentException.class) public void constructorFactoryMethodFromTooManySeconds() { TimeInstantBuilder.fromSeconds(TimeInstant.MAX_SECONDS + 1); }
@Test(expected = IllegalArgumentException.class) public void constructorFactoryMethodFromSecondsNegative() { TimeInstantBuilder.fromSeconds(-1L); }
@Test(expected = IllegalArgumentException.class) public void invalidMinusSecondsTest() { final TimeInstant t1 = TimeInstantBuilder.fromSeconds(10L); t1.minusSeconds(12L); }