FakeRequest Promise类型的结果

时间:2013-07-19 08:30:19

标签: java junit playframework playframework-2.0 playframework-2.1

我需要使用Play Framework v2.1.1测试用Java编写的API 考虑下面的测试,它传递(isNotNull)但我无法检查我是否得到了正确的结果(即状态代码,响应中的JSON数组,......)。它适用于任何呼叫,即使路由实际上不存在。 Logger记录以下内容:AsyncResult(scala.concurrent.impl.Promise$DefaultPromise@3c7feca8 这是否意味着结果仍然存在,如果是的话:我如何得到它?

@Test
public void testRoute() {
    Result result = routeAndCall(fakeRequest(GET, "/api/call"));
    assertThat(result).isNotNull();
    Logger.info(result.toString());
}

感谢任何回复! :)

1 个答案:

答案 0 :(得分:0)

您可以使用Helpers类:

import static play.test.Helpers.*; //important import

@Test
public void testRoute() {
    Result result = routeAndCall(fakeRequest(GET, "/api/call"));
    assertThat(result).isNotNull();
    assertThat(status(result)).isEqualTo(200);
    assertThat(getContentAsString(result)).isEqualTo("{\"a\": [1,2,3,4,5]}");
}