Skip to content

Instantly share code, notes, and snippets.

@gel-hidden
Created October 26, 2022 13:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gel-hidden/de7975fffd0853ec8ce49f9d6fa6531d to your computer and use it in GitHub Desktop.
Save gel-hidden/de7975fffd0853ec8ce49f9d6fa6531d to your computer and use it in GitHub Desktop.
package com.example.demo
import org.junit.jupiter.api.Test
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.beans.factory.annotation.Qualifier
import org.springframework.boot.test.context.SpringBootTest
import org.springframework.integration.channel.QueueChannel
import org.springframework.integration.test.context.SpringIntegrationTest
import org.springframework.messaging.Message
import org.springframework.messaging.MessageChannel
import org.springframework.messaging.support.ChannelInterceptor
@SpringBootTest
@SpringIntegrationTest
class DemoApplicationTests constructor(
@Autowired val myGateway: MyGateway,
@Autowired @Qualifier("finalOutputActivator") val finalQueueChannel: QueueChannel,
@Autowired @Qualifier("updateModelData") val workerQueueChannel: QueueChannel,
) {
val logger: Logger = LoggerFactory.getLogger(this::class.java)
@Test
fun `test poller`() {
val myModels =
listOf(
MyModel(1, null),
MyModel(2, "Hello"),
MyModel(3, "World")
)
workerQueueChannel.addInterceptor(object : ChannelInterceptor {
override fun postReceive(message: Message<*>, channel: MessageChannel): Message<*>? {
logger.info("Received message ${message.payload}")
return super.postReceive(message, channel)
}
})
myGateway.updateModels(myModels, 1)
finalQueueChannel.receive(15_000)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment