Skip to content

Commit 5d3ab17

Browse files
committed
test for nested field resolver with batching and arrays
1 parent 00e048d commit 5d3ab17

File tree

1 file changed

+20
-12
lines changed

1 file changed

+20
-12
lines changed

src/test/groovy/com/intuit/graphql/orchestrator/integration/NestedFieldResolverSpec.groovy

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,17 @@ class NestedFieldResolverSpec extends BaseIntegrationTestSpecification {
2828
}
2929
"""
3030

31-
def QUERY_A = "query Resolver_Directive_Query {aTopField_0:aTopField(p1:\"bObjectFieldValue\") {aObjectField}}"
31+
def QUERY_A = "query Resolver_Directive_Query {aTopField_0:aTopField(p1:\"bObjectFieldValue1\") {aObjectField} aTopField_1:aTopField(p1:\"bObjectFieldValue2\") {aObjectField cTopField {cObjectField}}}"
3232
def mockServiceResponseA = [
3333
(QUERY_A): [data: [
34-
aTopField_0: [ aObjectField: "aObjectFieldValue"]
34+
aTopField_0: [ aObjectField: "aObjectFieldValue1"],
35+
aTopField_1: [ aObjectField: "aObjectFieldValue2"]
3536
]]
3637
]
3738

3839
def schemaB = """
3940
type Query {
40-
bTopField: BObjectType
41+
bTopField: [BObjectType]
4142
}
4243
4344
type BObjectType {
@@ -57,7 +58,7 @@ class NestedFieldResolverSpec extends BaseIntegrationTestSpecification {
5758
def QUERY_B = "query QUERY {bTopField {bObjectField}}"
5859
def mockServiceResponseB = [
5960
(QUERY_B) : [ data: [
60-
bTopField: [ bObjectField: "bObjectFieldValue"]
61+
bTopField: [[ bObjectField: "bObjectFieldValue1"], [ bObjectField: "bObjectFieldValue2"]]
6162
]]
6263
]
6364

@@ -71,10 +72,11 @@ class NestedFieldResolverSpec extends BaseIntegrationTestSpecification {
7172
}
7273
"""
7374

74-
def QUERY_C = "query Resolver_Directive_Query {cTopField_0:cTopField {cObjectField}}"
75+
def QUERY_C = "query Resolver_Directive_Query {cTopField_0:cTopField {cObjectField} cTopField_1:cTopField {cObjectField}}"
7576
def mockServiceResponseC = [
7677
(QUERY_C): [data: [
77-
cTopField_0: [ cObjectField: "cObjectFieldValue"]
78+
cTopField_0: [ cObjectField: "cObjectFieldValue1"],
79+
cTopField_1: [ cObjectField: "cObjectFieldValue2"],
7880
]]
7981
]
8082

@@ -114,12 +116,18 @@ class NestedFieldResolverSpec extends BaseIntegrationTestSpecification {
114116
then:
115117
executionResult.getErrors().isEmpty()
116118
executionResult?.data?.bTopField?.size() == 2
117-
executionResult?.data?.bTopField?.bObjectField == "bObjectFieldValue"
118-
executionResult?.data?.bTopField?.aTopField?.size() == 2
119-
executionResult?.data?.bTopField?.aTopField?.aObjectField == "aObjectFieldValue"
120-
executionResult?.data?.bTopField?.aTopField?.cTopField?.size() == 1
121-
executionResult?.data?.bTopField?.aTopField?.cTopField?.cObjectField == "cObjectFieldValue"
122-
119+
executionResult?.data?.bTopField[0]?.size() == 2
120+
executionResult?.data?.bTopField[1]?.size() == 2
121+
executionResult?.data?.bTopField[0]?.bObjectField == "bObjectFieldValue1"
122+
executionResult?.data?.bTopField[0]?.aTopField?.size() == 2
123+
executionResult?.data?.bTopField[0]?.aTopField?.aObjectField == "aObjectFieldValue1"
124+
executionResult?.data?.bTopField[0]?.aTopField?.cTopField?.size() == 1
125+
executionResult?.data?.bTopField[0]?.aTopField?.cTopField?.cObjectField == "cObjectFieldValue1"
126+
executionResult?.data?.bTopField[1]?.bObjectField == "bObjectFieldValue2"
127+
executionResult?.data?.bTopField[1]?.aTopField?.size() == 2
128+
executionResult?.data?.bTopField[1]?.aTopField?.aObjectField == "aObjectFieldValue2"
129+
executionResult?.data?.bTopField[1]?.aTopField?.cTopField?.size() == 1
130+
executionResult?.data?.bTopField[1]?.aTopField?.cTopField?.cObjectField == "cObjectFieldValue2"
123131
}
124132

125133
}

0 commit comments

Comments
 (0)