Ashish Kumar Joy
05/18/2020, 7:24 AM@MicronautTest
class GreetControllerTest(
@Inject @Client("/") val httpClient: RxHttpClient,
val greetService: GreetService
) : StringSpec({
"should greet" {
every { getMock(greetingService).greetPerson(name) } returns "Hello World"
val greeting = httpClient.toBlocking()
.exchange(GET("/greet"), String::class)
greeting shouldBe "Hello World"
}
}) {
@MockBean(GreetingService::class)
fun mockedGreetingService() = mockk<GreetingService>()
}
@Controller
class GreetingController(val greetingService: GreetingService) {
@Get("/greet/{name}")
fun greet(name: String) = greetingService.greetPerson(name)
}