### Question:
Timing { public void start() { if (!started) { cur = systemTime(); started = true; } } Timing(); void start(); void stop(); void restart(); void pause(); void unpause(); boolean elapsed(long time); long elapsed(); void set(long value); long get(); boolean isStarted();  }### Answer:
@Test void testStart() { assertFalse(timing.isStarted()); assertEquals(0L, timing.elapsed()); assertFalse(timing.elapsed(-1L)); assertFalse(timing.elapsed(0L)); assertFalse(timing.elapsed(1L)); assertEquals(0L, timing.get()); timing.start(); final long time = timing.get(); assertTrue(timing.isStarted()); UtilTests.pause(PAUSE); assertFalse(timing.elapsed(PAUSE * Constant.HUNDRED), String.valueOf(timing.elapsed())); assertTrue(timing.elapsed() >= PAUSE, String.valueOf(timing.elapsed())); assertTrue(timing.elapsed(PAUSE), String.valueOf(timing.elapsed())); assertEquals(time, timing.get(), time + " " + timing.elapsed()); timing.start(); UtilTests.pause(PAUSE); assertTrue(timing.elapsed() >= PAUSE, String.valueOf(timing.elapsed())); assertTrue(timing.elapsed(PAUSE), String.valueOf(timing.elapsed())); assertEquals(time, timing.get(), time + " " + timing.elapsed()); }