From f2e4cea47d16dec537861a002fdf6bba720ff8b6 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Fri, 3 May 2019 09:27:04 +0200 Subject: [PATCH] GH-263 Added more AWS tests Resolves #263 --- ...ringBootApiGatewayRequestHandlerTests.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/spring-cloud-function-adapters/spring-cloud-function-adapter-aws/src/test/java/org/springframework/cloud/function/adapter/aws/SpringBootApiGatewayRequestHandlerTests.java b/spring-cloud-function-adapters/spring-cloud-function-adapter-aws/src/test/java/org/springframework/cloud/function/adapter/aws/SpringBootApiGatewayRequestHandlerTests.java index cd9de7bf8..6f606858d 100644 --- a/spring-cloud-function-adapters/spring-cloud-function-adapter-aws/src/test/java/org/springframework/cloud/function/adapter/aws/SpringBootApiGatewayRequestHandlerTests.java +++ b/spring-cloud-function-adapters/spring-cloud-function-adapter-aws/src/test/java/org/springframework/cloud/function/adapter/aws/SpringBootApiGatewayRequestHandlerTests.java @@ -18,7 +18,9 @@ package org.springframework.cloud.function.adapter.aws; import java.util.Collections; import java.util.Map; +import java.util.function.Consumer; import java.util.function.Function; +import java.util.function.Supplier; import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyRequestEvent; import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyResponseEvent; @@ -41,8 +43,23 @@ public class SpringBootApiGatewayRequestHandlerTests { private SpringBootApiGatewayRequestHandler handler; + @Test + public void supplierBean() { + System.setProperty("function.name", "supplier"); + this.handler = new SpringBootApiGatewayRequestHandler(FunctionConfig.class); + APIGatewayProxyRequestEvent request = new APIGatewayProxyRequestEvent(); + + Object output = this.handler.handleRequest(request, null); + assertThat(output).isInstanceOf(APIGatewayProxyResponseEvent.class); + assertThat(((APIGatewayProxyResponseEvent) output).getStatusCode()) + .isEqualTo(200); + assertThat(((APIGatewayProxyResponseEvent) output).getBody()) + .isEqualTo("\"hello!\""); + } + @Test public void functionBean() { + System.setProperty("function.name", "function"); this.handler = new SpringBootApiGatewayRequestHandler(FunctionConfig.class); APIGatewayProxyRequestEvent request = new APIGatewayProxyRequestEvent(); request.setBody("{\"value\":\"foo\"}"); @@ -55,6 +72,19 @@ public class SpringBootApiGatewayRequestHandlerTests { .isEqualTo("{\"value\":\"FOO\"}"); } + @Test + public void consumerBean() { + System.setProperty("function.name", "consumer"); + this.handler = new SpringBootApiGatewayRequestHandler(FunctionConfig.class); + APIGatewayProxyRequestEvent request = new APIGatewayProxyRequestEvent(); + request.setBody("\"strVal\":\"test for consumer\""); + + Object output = this.handler.handleRequest(request, null); + assertThat(output).isInstanceOf(APIGatewayProxyResponseEvent.class); + assertThat(((APIGatewayProxyResponseEvent) output).getStatusCode()) + .isEqualTo(200); + } + @Test public void functionMessageBean() { this.handler = new SpringBootApiGatewayRequestHandler( @@ -82,6 +112,16 @@ public class SpringBootApiGatewayRequestHandlerTests { return foo -> new Bar(foo.getValue().toUpperCase()); } + @Bean + public Consumer consumer() { + return v -> System.out.println(v); + } + + @Bean + public Supplier supplier() { + return () -> "hello!"; + } + } @Configuration