Question
What does the examples/spring-kotlin docker-backed integration test look like, and how is its
source set wired?
Model it on application-apis/.../example-adapter-kotlin/CalendarAdapterIntegrationTest (its
shape, not its build — that repo uses the asyncapi codegen plugin DataSource-Extensions lacks):
start a Liberator Testcontainer via the shared kotest module, run the spring-kotlin adapter against
the container's mapped DataSource port, subscribe as a StreamLink client, and assert data flows
end-to-end.
Decide and specify:
- What the adapter serves and what the client asserts — the concrete subject(s) and expected
records, given whatever examples/spring-kotlin currently exposes (audit its controller/services).
- Source-set wiring: add an
integrationTest JvmTestSuite to examples/spring-kotlin
(which today is a plain kotlin("jvm") + spring-boot build, not the common-library convention).
It depends on the kotest module, kotest-runner, turbine.
- CI exclusion: confirm the suite is not wired into
check (so ./gradlew check in CI skips
it), mirroring example-adapter-kotlin (which also disables Kover instrumentation for it). Decide
whether a developer runs it via ./gradlew :examples:spring-kotlin:integrationTest.
- Whether the spring adapter needs any change to be startable against an arbitrary
host/port from the test (cf. startCalendarAdapter(host, dataSourcePort)).
Output: the IT design + the build-file changes for the example.
Blocked by the shared kotest module shape.
Question
What does the
examples/spring-kotlindocker-backed integration test look like, and how is itssource set wired?
Model it on
application-apis/.../example-adapter-kotlin/CalendarAdapterIntegrationTest(itsshape, not its build — that repo uses the
asyncapicodegen plugin DataSource-Extensions lacks):start a Liberator Testcontainer via the shared
kotestmodule, run the spring-kotlin adapter againstthe container's mapped DataSource port, subscribe as a StreamLink client, and assert data flows
end-to-end.
Decide and specify:
records, given whatever
examples/spring-kotlincurrently exposes (audit its controller/services).integrationTestJvmTestSuitetoexamples/spring-kotlin(which today is a plain
kotlin("jvm")+ spring-boot build, not thecommon-libraryconvention).It depends on the
kotestmodule,kotest-runner,turbine.check(so./gradlew checkin CI skipsit), mirroring
example-adapter-kotlin(which also disables Kover instrumentation for it). Decidewhether a developer runs it via
./gradlew :examples:spring-kotlin:integrationTest.host/port from the test (cf.
startCalendarAdapter(host, dataSourcePort)).Output: the IT design + the build-file changes for the example.
Blocked by the shared
kotestmodule shape.