// :test-support — shared fakes (FakeTransport / FakeHttpTransport / FakeTimeSource) // mirroring iOS's TestSupport package. Consumed by other modules' test source sets. // Pure Kotlin/JVM; depends only on :wire-protocol (+ coroutines for the fakes). plugins { alias(libs.plugins.kotlin.jvm) alias(libs.plugins.kotlin.serialization) } kotlin { jvmToolchain(17) } dependencies { api(project(":wire-protocol")) api(libs.kotlinx.coroutines.core) // Exposed as `api` on purpose: the fakes live in `main` (Owns), and downstream // modules consume both the fakes AND `TestScope`/virtual-time from their test // source sets via a single `testImplementation(project(":test-support"))`. api(libs.kotlinx.coroutines.test) testImplementation(libs.bundles.unit.test) testRuntimeOnly(libs.junit.platform.launcher) } tasks.test { useJUnitPlatform() }