Skip to content
This repository was archived by the owner on Oct 25, 2021. It is now read-only.

Commit 325f53a

Browse files
committed
webflux testing
1 parent 866da86 commit 325f53a

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

graphql-java-spring-webflux/src/main/java/graphql/spring/web/reactive/components/GraphQLController.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
import org.springframework.web.bind.annotation.RequestMethod;
1616
import org.springframework.web.bind.annotation.RequestParam;
1717
import org.springframework.web.bind.annotation.RestController;
18-
import org.springframework.web.context.request.WebRequest;
1918
import reactor.core.publisher.Mono;
2019

2120
import java.io.IOException;
@@ -55,9 +54,8 @@ public Object graphqlGET(
5554
@RequestParam("query") String query,
5655
@RequestParam(value = "operationName", required = false) String operationName,
5756
@RequestParam(value = "variables", required = false) String variablesJson,
58-
WebRequest webRequest,
5957
ServerHttpResponse serverHttpResponse) {
60-
Mono<ExecutionResult> executionResult = graphQLInvocation.invoke(new GraphQLInvocationData(query, operationName, convertVariablesJson(variablesJson)), webRequest);
58+
Mono<ExecutionResult> executionResult = graphQLInvocation.invoke(new GraphQLInvocationData(query, operationName, convertVariablesJson(variablesJson)), null);
6159
return executionResultHandler.handleExecutionResult(executionResult, serverHttpResponse);
6260
}
6361

graphql-java-spring-webflux/src/test/java/graphql/spring/web/reactive/components/GraphQLControllerTest.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.springframework.test.web.reactive.server.WebTestClient;
1313
import reactor.core.publisher.Mono;
1414

15+
import java.net.URLEncoder;
1516
import java.util.LinkedHashMap;
1617
import java.util.Map;
1718

@@ -34,7 +35,7 @@ public void setup() {
3435

3536

3637
@Test
37-
public void testVariableJson() throws Exception {
38+
public void testPostRequest() throws Exception {
3839
Map<String, Object> request = new LinkedHashMap<>();
3940
client.post().uri("/graphql")
4041
.body(Mono.just(request), Map.class)
@@ -53,4 +54,20 @@ public void testVariableJson() throws Exception {
5354

5455
}
5556

57+
@Test
58+
public void testGetRequestWithVariables() throws Exception {
59+
String variablesJson = "{\"key\":\"value\"}";
60+
String variablesValue = URLEncoder.encode(variablesJson, "UTF-8");
61+
String queryString = URLEncoder.encode("{foo}", "UTF-8");
62+
client.get().uri(uriBuilder -> uriBuilder.path("/graphql")
63+
.queryParam("variables", variablesValue)
64+
.queryParam("query", queryString)
65+
.build(variablesJson, queryString))
66+
.accept(MediaType.APPLICATION_JSON_UTF8)
67+
.exchange()
68+
.expectStatus().isOk()
69+
.expectBody()
70+
.jsonPath("data", is("foo"));
71+
72+
}
5673
}

0 commit comments

Comments
 (0)