test

abstract fun test(name: String, config: TestConfig = TestConfig.Empty, block: suspend TestDsl.() -> Unit)(source)

Declares a test named name as part of the current suite.

Simple example

suite("An example") {
test("A test") {
delay(2.minutes) // can suspend
time.advanceBy(2.minutes) // can control the virtual time
launchInBackground { … } // can start background tasks
// …
}
}

To learn more about the functionality available within tests, see TestDsl.

Test configuration

The test's configuration can be passed with the config parameter:

test("An example", CoroutineTimeout(2.minutes) + Tag("slow")) {
// …
}

To learn more about the available configuration options, see the subtypes of TestConfig.Element.


open fun test(name: String, context: CoroutineContext = EmptyCoroutineContext, config: TestConfig = TestConfig.Empty, block: suspend TestDsl.() -> Unit)(source)

Deprecated

Prefer injecting the coroutine context using the `Context` test configuration.

Replace with

import opensavvy.prepared.suite.config.*
test(name, config + Context(context), block)