Slide 69
Slide 69 text
class FlowTest(private val parentJob: Job, private val emissions: List) {
fun triggerEmissions(action: suspend () !" Job) {
runBlocking { action().join() }
}
fun afterCollect(verification: (List) !" Unit) {
parentJob.invokeOnCompletion {
verification.invoke(emissions)
}
}
companion object {
fun flowTest(
target: Flow,
scope: CoroutineScope = GlobalScope,
block: FlowTest.() !" Unit
) {
target.test(scope, block)
}
}
}