package org.springside.modules.utils.time; import static org.assertj.core.api.Assertions.*; import java.util.Date; import org.junit.Test; import org.springside.modules.utils.time.ClockUtil.DummyClock; public class ClockUtilTest { @Test public void testDummyClock() { DummyClock clock = new DummyClock(); clock.updateNow(111); assertThat(clock.currentTimeMillis()).isEqualTo(111); assertThat(clock.currentDate().getTime()).isEqualTo(111); clock.updateNow(new Date(112)); assertThat(clock.currentTimeMillis()).isEqualTo(112); clock.increaseTime(200); assertThat(clock.currentTimeMillis()).isEqualTo(312); clock.decreaseTime(100); assertThat(clock.currentTimeMillis()).isEqualTo(212); clock.setNanoTime(150); assertThat(clock.nanoTime()).isEqualTo(150); } @Test public void elapsedTime() { try { DummyClock clock = ClockUtil.useDummyClock(2000); clock.increaseTime(1000); assertThat(ClockUtil.elapsedTime(2000)).isEqualTo(1000); } finally { ClockUtil.useDefaultClock(); } } }