Add ClockMark and measureTime tests with test clock
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package test.time
|
||||
|
||||
import kotlin.test.*
|
||||
import kotlin.time.*
|
||||
|
||||
class ClockMarkTest {
|
||||
|
||||
@Test
|
||||
fun adjustment() {
|
||||
val clock = TestClock(unit = DurationUnit.NANOSECONDS)
|
||||
|
||||
val mark = clock.mark()
|
||||
val markFuture1 = mark + 1.milliseconds
|
||||
val markFuture2 = mark - (-1).milliseconds
|
||||
|
||||
val markPast1 = mark - 1.milliseconds
|
||||
val markPast2 = markFuture1 + (-2).milliseconds
|
||||
|
||||
clock.reading = 500_000L
|
||||
|
||||
val elapsed = mark.elapsed()
|
||||
val elapsedFromFuture = elapsed - 1.milliseconds
|
||||
val elapsedFromPast = elapsed + 1.milliseconds
|
||||
|
||||
assertEquals(0.5.milliseconds, elapsed)
|
||||
assertEquals(elapsedFromFuture, markFuture1.elapsed())
|
||||
assertEquals(elapsedFromFuture, markFuture2.elapsed())
|
||||
|
||||
assertEquals(elapsedFromPast, markPast1.elapsed())
|
||||
assertEquals(elapsedFromPast, markPast2.elapsed())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user