summaryrefslogtreecommitdiffstats
path: root/container-core/src/test/java/com/yahoo
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2021-03-25 17:01:14 +0100
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2021-03-26 13:49:39 +0100
commitc58704ff3dd6b204c4df28499e418bb8e77f72d2 (patch)
tree2bfab01b11d442b1aa37611c365f2c00fed7cced /container-core/src/test/java/com/yahoo
parenta9c2fe028dbec15644923a9de800320c15b90579 (diff)
Optional inject request entity to handler for POST,PUT,PATCH
Diffstat (limited to 'container-core/src/test/java/com/yahoo')
-rw-r--r--container-core/src/test/java/com/yahoo/restapi/RestApiImplTest.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/container-core/src/test/java/com/yahoo/restapi/RestApiImplTest.java b/container-core/src/test/java/com/yahoo/restapi/RestApiImplTest.java
index 16cc2353986..1de8184ce22 100644
--- a/container-core/src/test/java/com/yahoo/restapi/RestApiImplTest.java
+++ b/container-core/src/test/java/com/yahoo/restapi/RestApiImplTest.java
@@ -43,7 +43,7 @@ class RestApiImplTest {
@Test
void executes_filters_and_handler_in_correct_order() {
List<String> actualEvaluationOrdering = new ArrayList<>();
- RestApi.MethodHandler<HttpResponse> handler = context -> {
+ RestApi.Handler<HttpResponse> handler = context -> {
actualEvaluationOrdering.add("handler");
return new MessageResponse("get-method-response");
};
@@ -83,8 +83,8 @@ class RestApiImplTest {
.disableDefaultResponseMappers()
.addRoute(route("/long").get(ctx -> 123456L))
.addRoute(route("/exception").get(ctx -> 123L / 0L))
- .addResponseMapper(Long.class, (entity, ctx) -> new MessageResponse("long value is " + entity))
- .addExceptionMapper(ArithmeticException.class, (exception, ctx) -> ErrorResponse.internalServerError("oops division by zero"))
+ .addResponseMapper(Long.class, (ctx, entity) -> new MessageResponse("long value is " + entity))
+ .addExceptionMapper(ArithmeticException.class, (ctx, exception) -> ErrorResponse.internalServerError("oops division by zero"))
.build();
verifyJsonResponse(restApi, Method.GET, "/long", null, 200, "{\"message\":\"long value is 123456\"}");
verifyJsonResponse(restApi, Method.GET, "/exception", null, 500, "{\"message\":\"oops division by zero\", \"error-code\":\"INTERNAL_SERVER_ERROR\"}");
@@ -92,9 +92,11 @@ class RestApiImplTest {
@Test
void method_handler_can_consume_and_produce_json() {
+ RestApi.HandlerWithRequestEntity<TestEntity, TestEntity> handler = (context, requestEntity) -> requestEntity;
RestApi restApi = RestApi.builder()
- .addRoute(route("/api").post(
- ctx -> ctx.requestContent().get().consumeJacksonEntity(TestEntity.class)))
+ .registerJacksonRequestEntity(TestEntity.class)
+ .registerJacksonResponseEntity(TestEntity.class)
+ .addRoute(route("/api").post(TestEntity.class, handler))
.build();
String rawJson = "{\"mystring\":\"my-string-value\", \"myinstant\":\"2000-01-01T00:00:00Z\"}";
verifyJsonResponse(restApi, Method.POST, "/api", rawJson, 200, rawJson);
@@ -118,7 +120,7 @@ class RestApiImplTest {
}
}
- public static class TestEntity implements RestApi.JacksonRequestEntity, RestApi.JacksonResponseEntity {
+ public static class TestEntity {
@JsonProperty("mystring") public String stringValue;
@JsonProperty("myinstant") public Instant instantValue;
}