В моем приложении Micronaut у меня есть простой контроллер REST:
public class Response {
private String code;
public Response(String code) {
this.code = code;
}
}
@Controller("/api/test")
public class TestController {
@Post("/")
public Response index() {
return new Response("OK");
}
}
Как я могу проверить эту точку? Я пытался использовать
@MicronautTest
public class TestControllerTest {
@Inject
EmbeddedServer server;
@Inject
@Client("/")
HttpClient client;
@Test
void testResponse() {
String response = client.toBlocking()
.retrieve(HttpRequest.POST("/api/test/")); // FIXME `HttpRequest.POST` requires body
assertEquals("{\"code\": \"OK"\}", response);
}
, но для HttpRequest.POST
требуется указать дополнительный аргумент body
. В моем случае нет тела для отправки. (В реальном коде это запрос инициализации нового объекта и, следовательно, он должен быть POST).