@@ -140,5 +140,59 @@ class NodeVisitorStubTest extends Specification {
140140 control == TraversalControl . QUIT
141141 }
142142
143+ def " type definitions call visitTypeDefinition by default" () {
144+ given :
145+ NodeVisitorStub nodeVisitorStub = Spy (NodeVisitorStub , constructorArgs : [])
146+ UnionTypeDefinition unionTypeDefinition = new UnionTypeDefinition (" " )
147+ InputObjectTypeDefinition inputObjectTypeDefinition = new InputObjectTypeDefinition (" " )
148+ ScalarTypeDefinition scalarTypeDefinition = new ScalarTypeDefinition (" " )
149+ InterfaceTypeDefinition interfaceTypeDefinition = new InterfaceTypeDefinition (" " )
150+ EnumTypeDefinition enumTypeDefinition = new EnumTypeDefinition (" " )
151+ ObjectTypeDefinition objectTypeDefinition = new ObjectTypeDefinition (" " )
152+ TraverserContext context = Mock (TraverserContext )
153+
154+ when :
155+ def control = nodeVisitorStub. visitUnionTypeDefinition(unionTypeDefinition, context)
156+ then :
157+ 1 * nodeVisitorStub. visitTypeDefinition(unionTypeDefinition, context) >> TraversalControl . QUIT
158+ control == TraversalControl . QUIT
159+
160+ when :
161+ control = nodeVisitorStub. visitInputObjectTypeDefinition(inputObjectTypeDefinition, context)
162+ then :
163+ 1 * nodeVisitorStub. visitTypeDefinition(inputObjectTypeDefinition, context) >> TraversalControl . QUIT
164+ control == TraversalControl . QUIT
165+
166+ when :
167+ control = nodeVisitorStub. visitInputObjectTypeDefinition(inputObjectTypeDefinition, context)
168+ then :
169+ 1 * nodeVisitorStub. visitTypeDefinition(inputObjectTypeDefinition, context) >> TraversalControl . QUIT
170+ control == TraversalControl . QUIT
171+
172+ when :
173+ control = nodeVisitorStub. visitScalarTypeDefinition(scalarTypeDefinition, context)
174+ then :
175+ 1 * nodeVisitorStub. visitTypeDefinition(scalarTypeDefinition, context) >> TraversalControl . QUIT
176+ control == TraversalControl . QUIT
177+
178+ when :
179+ control = nodeVisitorStub. visitInterfaceTypeDefinition(interfaceTypeDefinition, context)
180+ then :
181+ 1 * nodeVisitorStub. visitTypeDefinition(interfaceTypeDefinition, context) >> TraversalControl . QUIT
182+ control == TraversalControl . QUIT
183+
184+ when :
185+ control = nodeVisitorStub. visitEnumTypeDefinition(enumTypeDefinition, context)
186+ then :
187+ 1 * nodeVisitorStub. visitEnumTypeDefinition(enumTypeDefinition, context) >> TraversalControl . QUIT
188+ control == TraversalControl . QUIT
189+
190+ when :
191+ control = nodeVisitorStub. visitObjectTypeDefinition(objectTypeDefinition, context)
192+ then :
193+ 1 * nodeVisitorStub. visitObjectTypeDefinition(objectTypeDefinition, context) >> TraversalControl . QUIT
194+ control == TraversalControl . QUIT
195+ }
196+
143197
144198}
0 commit comments