Iterate on EnsureCalledOnce devX

This commit is contained in:
Benoit Marty 2024-01-08 10:07:48 +01:00
parent ba2c297118
commit 0628ceabc1
2 changed files with 16 additions and 14 deletions

View file

@ -27,11 +27,12 @@ class EnsureCalledOnce : () -> Unit {
throw AssertionError("Expected to be called once, but was called $counter times")
}
}
}
fun run(block: (callback: EnsureCalledOnce) -> Unit) {
block(this)
assertSuccess()
}
fun ensureCalledOnce(block: (callback: EnsureCalledOnce) -> Unit) {
val callback = EnsureCalledOnce()
block(callback)
callback.assertSuccess()
}
class EnsureCalledOnceWithParam<T>(
@ -50,9 +51,10 @@ class EnsureCalledOnceWithParam<T>(
throw AssertionError("Expected to be called once, but was called $counter times")
}
}
fun run(block: (callback: EnsureCalledOnceWithParam<T>) -> Unit) {
block(this)
assertSuccess()
}
}
fun <T> ensureCalledOnceWithParam(param: T, block: (callback: EnsureCalledOnceWithParam<T>) -> Unit) {
val callback = EnsureCalledOnceWithParam(param)
block(callback)
callback.assertSuccess()
}