Introduce TestClock.plusAssign(Duration) and hide implementation details

TestClock.plusAssign(Duration) is for advancing TestClock time.
Hide reading value, do not allow to provide initial reading,
fix clock unit to nanoseconds at construction time.
This commit is contained in:
Ilya Gorbunov
2019-08-08 22:40:36 +03:00
parent 4de9361c37
commit f889d25287
5 changed files with 111 additions and 20 deletions
@@ -47,11 +47,12 @@ class MeasureTimeTest {
}
@Test fun measureTimeTestClock() {
val clock = TestClock(unit = DurationUnit.NANOSECONDS)
@Test
fun measureTimeTestClock() {
val clock = TestClock()
val expectedNs = Random.nextLong(1_000_000_000L)
val elapsed = clock.measureTime {
clock.reading += expectedNs
clock += expectedNs.nanoseconds
}
assertEquals(expectedNs.nanoseconds, elapsed)
@@ -59,7 +60,7 @@ class MeasureTimeTest {
val expectedResult: Long
val (result, elapsed2) = clock.measureTimedValue {
clock.reading += expectedNs
clock += expectedNs.nanoseconds
expectedResult = expectedNs
expectedNs
}