diff --git a/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OkapiCoreTestStubs.kt b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OkapiCoreTestStubs.kt new file mode 100644 index 0000000..7c17b9d --- /dev/null +++ b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OkapiCoreTestStubs.kt @@ -0,0 +1,10 @@ +package com.softwaremill.okapi.core + +/** + * Shared no-op test doubles for okapi-core. A single source means a [TransactionRunner] contract + * change is a one-line edit, not a sweep across every scheduler/purger test. + */ + +internal fun noOpTransactionRunner() = object : TransactionRunner { + override fun runInTransaction(block: () -> T): T = block() +} diff --git a/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxPurgerTest.kt b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxPurgerTest.kt index f28b7b2..47de099 100644 --- a/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxPurgerTest.kt +++ b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxPurgerTest.kt @@ -299,10 +299,6 @@ class OutboxPurgerTest : FunSpec({ } }) -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -} - private fun stubStore(onRemove: (Instant, Int) -> Int = { _, _ -> 0 }) = object : OutboxStore { override fun persist(entry: OutboxEntry) = entry override fun claimPending(limit: Int) = emptyList() diff --git a/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxSchedulerTest.kt b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxSchedulerTest.kt index cf29568..98af3ee 100644 --- a/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxSchedulerTest.kt +++ b/okapi-core/src/test/kotlin/com/softwaremill/okapi/core/OutboxSchedulerTest.kt @@ -133,10 +133,6 @@ class OutboxSchedulerTest : FunSpec({ } }) -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -} - private fun stubProcessor(onProcessNext: (Int) -> Unit): OutboxProcessor { val store = object : OutboxStore { override fun persist(entry: OutboxEntry) = entry diff --git a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/DataSourceQualifierAutoConfigurationTest.kt b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/DataSourceQualifierAutoConfigurationTest.kt index 08019f6..a7d0e7e 100644 --- a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/DataSourceQualifierAutoConfigurationTest.kt +++ b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/DataSourceQualifierAutoConfigurationTest.kt @@ -79,7 +79,3 @@ class DataSourceQualifierAutoConfigurationTest : FunSpec({ } } }) - -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -} diff --git a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/LiquibaseAutoConfigurationTest.kt b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/LiquibaseAutoConfigurationTest.kt index 8d97834..4cfe78f 100644 --- a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/LiquibaseAutoConfigurationTest.kt +++ b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/LiquibaseAutoConfigurationTest.kt @@ -511,7 +511,3 @@ private fun canLoadClass(fqcn: String, classLoader: ClassLoader): Boolean = try } catch (_: ClassNotFoundException) { false } - -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -} diff --git a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OkapiSpringTestStubs.kt b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OkapiSpringTestStubs.kt index da0d571..855f7e6 100644 --- a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OkapiSpringTestStubs.kt +++ b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OkapiSpringTestStubs.kt @@ -5,6 +5,7 @@ import com.softwaremill.okapi.core.MessageDeliverer import com.softwaremill.okapi.core.OutboxEntry import com.softwaremill.okapi.core.OutboxStatus import com.softwaremill.okapi.core.OutboxStore +import com.softwaremill.okapi.core.TransactionRunner import org.springframework.beans.factory.support.BeanDefinitionBuilder import org.springframework.context.support.GenericApplicationContext import java.time.Instant @@ -31,6 +32,10 @@ internal fun stubDelivererWithType(t: String) = object : MessageDeliverer { override fun deliver(entry: OutboxEntry) = DeliveryResult.Success } +internal fun noOpTransactionRunner() = object : TransactionRunner { + override fun runInTransaction(block: () -> T): T = block() +} + /** * Registers a bean via [GenericApplicationContext.registerBeanDefinition], optionally `@Primary`. * Collapses the `BeanDefinitionBuilder.genericBeanDefinition(...).beanDefinition.apply { isPrimary }` diff --git a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxProcessorAutoConfigurationTest.kt b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxProcessorAutoConfigurationTest.kt index a3ef1e4..56c7f86 100644 --- a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxProcessorAutoConfigurationTest.kt +++ b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxProcessorAutoConfigurationTest.kt @@ -227,7 +227,3 @@ private fun resolveSpringBootClass(vararg candidateFqcns: String): Class<*> { } } ?: error("None of $candidateFqcns resolves on this Spring Boot runtime; check spring-boot-starter-actuator on the test classpath.") } - -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -} diff --git a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxPurgerAutoConfigurationTest.kt b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxPurgerAutoConfigurationTest.kt index a25055a..9a7812a 100644 --- a/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxPurgerAutoConfigurationTest.kt +++ b/okapi-spring-boot/src/test/kotlin/com/softwaremill/okapi/springboot/OutboxPurgerAutoConfigurationTest.kt @@ -101,7 +101,3 @@ class OutboxPurgerAutoConfigurationTest : FunSpec({ scheduler.isRunning shouldBe false } }) - -private fun noOpTransactionRunner() = object : TransactionRunner { - override fun runInTransaction(block: () -> T): T = block() -}