Skip to content
This repository was archived by the owner on Feb 27, 2023. It is now read-only.

Commit a66643d

Browse files
committed
tests
1 parent 16526b2 commit a66643d

File tree

1 file changed

+21
-60
lines changed

1 file changed

+21
-60
lines changed

src/test/groovy/graphql/language/NodeVisitorStubTest.groovy

Lines changed: 21 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -76,85 +76,46 @@ class NodeVisitorStubTest extends Specification {
7676
new SchemaDefinition() | 'visitSchemaDefinition'
7777
}
7878

79-
def "type definitions call visitTypeDefinition by default"() {
79+
@Unroll
80+
def "#visitMethod call visitTypeDefinition by default"() {
8081
given:
8182
NodeVisitorStub nodeVisitorStub = Spy(NodeVisitorStub, constructorArgs: [])
82-
UnionTypeDefinition unionTypeDefinition = new UnionTypeDefinition("")
83-
InputObjectTypeDefinition inputObjectTypeDefinition = new InputObjectTypeDefinition("")
84-
ScalarTypeDefinition scalarTypeDefinition = new ScalarTypeDefinition("")
85-
InterfaceTypeDefinition interfaceTypeDefinition = new InterfaceTypeDefinition("")
86-
EnumTypeDefinition enumTypeDefinition = new EnumTypeDefinition("")
87-
ObjectTypeDefinition objectTypeDefinition = new ObjectTypeDefinition("")
8883
TraverserContext context = Mock(TraverserContext)
8984

9085
when:
91-
def control = nodeVisitorStub.visitUnionTypeDefinition(unionTypeDefinition, context)
92-
then:
93-
1 * nodeVisitorStub.visitTypeDefinition(unionTypeDefinition, context) >> TraversalControl.QUIT
94-
control == TraversalControl.QUIT
95-
96-
when:
97-
control = nodeVisitorStub.visitInputObjectTypeDefinition(inputObjectTypeDefinition, context)
98-
then:
99-
1 * nodeVisitorStub.visitTypeDefinition(inputObjectTypeDefinition, context) >> TraversalControl.QUIT
100-
control == TraversalControl.QUIT
101-
102-
when:
103-
control = nodeVisitorStub.visitInputObjectTypeDefinition(inputObjectTypeDefinition, context)
104-
then:
105-
1 * nodeVisitorStub.visitTypeDefinition(inputObjectTypeDefinition, context) >> TraversalControl.QUIT
106-
control == TraversalControl.QUIT
107-
108-
when:
109-
control = nodeVisitorStub.visitScalarTypeDefinition(scalarTypeDefinition, context)
110-
then:
111-
1 * nodeVisitorStub.visitTypeDefinition(scalarTypeDefinition, context) >> TraversalControl.QUIT
112-
control == TraversalControl.QUIT
113-
114-
when:
115-
control = nodeVisitorStub.visitInterfaceTypeDefinition(interfaceTypeDefinition, context)
116-
then:
117-
1 * nodeVisitorStub.visitTypeDefinition(interfaceTypeDefinition, context) >> TraversalControl.QUIT
118-
control == TraversalControl.QUIT
119-
120-
when:
121-
control = nodeVisitorStub.visitEnumTypeDefinition(enumTypeDefinition, context)
86+
def control = nodeVisitorStub."$visitMethod"(node, context)
12287
then:
123-
1 * nodeVisitorStub.visitEnumTypeDefinition(enumTypeDefinition, context) >> TraversalControl.QUIT
88+
1 * nodeVisitorStub.visitTypeDefinition(node, context) >> TraversalControl.QUIT
12489
control == TraversalControl.QUIT
12590

126-
when:
127-
control = nodeVisitorStub.visitObjectTypeDefinition(objectTypeDefinition, context)
128-
then:
129-
1 * nodeVisitorStub.visitObjectTypeDefinition(objectTypeDefinition, context) >> TraversalControl.QUIT
130-
control == TraversalControl.QUIT
91+
where:
92+
node | visitMethod
93+
new UnionTypeDefinition("") | 'visitUnionTypeDefinition'
94+
new InputObjectTypeDefinition("") | 'visitInputObjectTypeDefinition'
95+
new ScalarTypeDefinition("") | 'visitScalarTypeDefinition'
96+
new InterfaceTypeDefinition("") | 'visitInterfaceTypeDefinition'
97+
new EnumTypeDefinition("") | 'visitEnumTypeDefinition'
98+
new ObjectTypeDefinition("") | 'visitObjectTypeDefinition'
13199
}
132100

133-
def "types call visitTypes by default"() {
101+
@Unroll
102+
def "#visitMethod call visitTypes by default"() {
134103
given:
135104
NodeVisitorStub nodeVisitorStub = Spy(NodeVisitorStub, constructorArgs: [])
136-
NonNullType nonNullType = new NonNullType()
137-
ListType listType = new ListType()
138-
TypeName typeName = new TypeName("")
139105
TraverserContext context = Mock(TraverserContext)
140106

141107
when:
142-
def control = nodeVisitorStub.visitNonNullType(nonNullType, context)
108+
def control = nodeVisitorStub."$visitMethod"(node, context)
143109
then:
144-
1 * nodeVisitorStub.visitType(nonNullType, context) >> TraversalControl.QUIT
110+
1 * nodeVisitorStub.visitType(node, context) >> TraversalControl.QUIT
145111
control == TraversalControl.QUIT
146112

147-
when:
148-
control = nodeVisitorStub.visitListType(listType, context)
149-
then:
150-
1 * nodeVisitorStub.visitType(listType, context) >> TraversalControl.QUIT
151-
control == TraversalControl.QUIT
113+
where:
114+
node | visitMethod
115+
new NonNullType() | 'visitNonNullType'
116+
new ListType() | 'visitListType'
117+
new TypeName("") | 'visitTypeName'
152118

153-
when:
154-
control = nodeVisitorStub.visitTypeName(typeName, context)
155-
then:
156-
1 * nodeVisitorStub.visitType(typeName, context) >> TraversalControl.QUIT
157-
control == TraversalControl.QUIT
158119
}
159120

160121
@Unroll

0 commit comments

Comments
 (0)