Play FrameworkのtestでJSONをPOSTする方法

各パラメータはLINEBOTのドキュメントにあったものを一部省略して使っています。


public class ControllerTest extends WithApplication { @Test public void testCallback() { ObjectNode content = Json.newObject(); content.put("contentType", "1"); content.put("text", "Hello, BOT API Server!"); RequestBuilder request = fakeRequest(controllers.routes.LineBotController.callback()).method("POST") .bodyJson(content); Result result = route(request); assertEquals(OK, result.status()); assertEquals("application/json", result.contentType().get()); assertTrue(contentAsString(result).contains("返事をするよ"));