### Question:
Tick implements Updatable { public void start() { if (!started) { started = true; updater = updating; } } Tick(); void addAction(TickAction action, long tickDelay); void start(); void stop(); void restart(); void pause(); void resume(); boolean elapsed(long tick); boolean elapsedTime(int rate, long milli); long elapsed(); void set(long value); boolean isStarted(); @Override void update(double extrp);  }### Answer:
@Test void testStart() { assertFalse(tick.isStarted()); assertFalse(tick.elapsed(0L)); assertFalse(tick.elapsedTime(0, 0L)); assertFalse(tick.elapsedTime(60, 0L)); assertEquals(0L, tick.elapsed()); tick.start(); assertTrue(tick.isStarted()); assertTrue(tick.elapsed(0L)); assertFalse(tick.elapsedTime(0, 0L)); assertTrue(tick.elapsedTime(60, 0L)); assertEquals(0L, tick.elapsed()); tick.start(); assertTrue(tick.isStarted()); assertFalse(tick.elapsed(1L)); assertFalse(tick.elapsedTime(0, 1L)); assertFalse(tick.elapsedTime(60, 1L)); assertEquals(0L, tick.elapsed()); }