Skip to content

Commit 03cd524

Browse files
committed
Extract small function in visitor test
Replicates graphql/graphql-js@ad2110e
1 parent 72bc96d commit 03cd524

File tree

1 file changed

+31
-27
lines changed

1 file changed

+31
-27
lines changed

tests/language/test_visitor.py

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ def check_visitor_fn_args(ast, node, key, parent, path, ancestors, is_edited=Fal
7575
assert getattr(parent, key) is node
7676

7777

78+
def get_value(node):
79+
return getattr(node, "value", None)
80+
81+
7882
def describe_visitor():
7983
def validates_path_argument():
8084
ast = parse("{ a }", no_location=True)
@@ -219,15 +223,15 @@ class TestVisitor(Visitor):
219223
def enter(self, *args):
220224
check_visitor_fn_args(ast, *args)
221225
node = args[0]
222-
kind, value = node.kind, getattr(node, "value", None)
226+
kind, value = node.kind, get_value(node)
223227
visited.append(["enter", kind, value])
224228
if kind == "field" and node.name.value == "b":
225229
return SKIP
226230

227231
def leave(self, *args):
228232
check_visitor_fn_args(ast, *args)
229233
node = args[0]
230-
kind, value = node.kind, getattr(node, "value", None)
234+
kind, value = node.kind, get_value(node)
231235
visited.append(["leave", kind, value])
232236

233237
visit(ast, TestVisitor())
@@ -258,15 +262,15 @@ class TestVisitor(Visitor):
258262
def enter(self, *args):
259263
check_visitor_fn_args(ast, *args)
260264
node = args[0]
261-
kind, value = node.kind, getattr(node, "value", None)
265+
kind, value = node.kind, get_value(node)
262266
visited.append(["enter", kind, value])
263267
if kind == "name" and node.value == "x":
264268
return BREAK
265269

266270
def leave(self, *args):
267271
check_visitor_fn_args(ast, *args)
268272
node = args[0]
269-
kind, value = node.kind, getattr(node, "value", None)
273+
kind, value = node.kind, get_value(node)
270274
visited.append(["leave", kind, value])
271275

272276
visit(ast, TestVisitor())
@@ -295,13 +299,13 @@ class TestVisitor(Visitor):
295299
def enter(self, *args):
296300
check_visitor_fn_args(ast, *args)
297301
node = args[0]
298-
kind, value = node.kind, getattr(node, "value", None)
302+
kind, value = node.kind, get_value(node)
299303
visited.append(["enter", kind, value])
300304

301305
def leave(self, *args):
302306
check_visitor_fn_args(ast, *args)
303307
node = args[0]
304-
kind, value = node.kind, getattr(node, "value", None)
308+
kind, value = node.kind, get_value(node)
305309
visited.append(["leave", kind, value])
306310
if kind == "name" and node.value == "x":
307311
return BREAK
@@ -333,19 +337,19 @@ class TestVisitor(Visitor):
333337
def enter_name(self, *args):
334338
check_visitor_fn_args(ast, *args)
335339
node = args[0]
336-
kind, value = node.kind, getattr(node, "value", None)
340+
kind, value = node.kind, get_value(node)
337341
visited.append(["enter", kind, value])
338342

339343
def enter_selection_set(self, *args):
340344
check_visitor_fn_args(ast, *args)
341345
node = args[0]
342-
kind, value = node.kind, getattr(node, "value", None)
346+
kind, value = node.kind, get_value(node)
343347
visited.append(["enter", kind, value])
344348

345349
def leave_selection_set(self, *args):
346350
check_visitor_fn_args(ast, *args)
347351
node = args[0]
348-
kind, value = node.kind, getattr(node, "value", None)
352+
kind, value = node.kind, get_value(node)
349353
visited.append(["leave", kind, value])
350354

351355
visit(ast, TestVisitor())
@@ -373,13 +377,13 @@ class TestVisitor(Visitor):
373377
def enter(self, *args):
374378
check_visitor_fn_args(ast, *args)
375379
node = args[0]
376-
kind, value = node.kind, getattr(node, "value", None)
380+
kind, value = node.kind, get_value(node)
377381
visited.append(["enter", kind, value])
378382

379383
def leave(self, *args):
380384
check_visitor_fn_args(ast, *args)
381385
node = args[0]
382-
kind, value = node.kind, getattr(node, "value", None)
386+
kind, value = node.kind, get_value(node)
383387
visited.append(["leave", kind, value])
384388

385389
visit(ast, TestVisitor())
@@ -800,15 +804,15 @@ class TestVisitor(Visitor):
800804
def enter(self, *args):
801805
check_visitor_fn_args(ast, *args)
802806
node = args[0]
803-
kind, value = node.kind, getattr(node, "value", None)
807+
kind, value = node.kind, get_value(node)
804808
visited.append(["enter", kind, value])
805809
if kind == "field" and node.name.value == "b":
806810
return SKIP
807811

808812
def leave(self, *args):
809813
check_visitor_fn_args(ast, *args)
810814
node = args[0]
811-
kind, value = node.kind, getattr(node, "value", None)
815+
kind, value = node.kind, get_value(node)
812816
visited.append(["leave", kind, value])
813817

814818
visit(ast, ParallelVisitor([TestVisitor()]))
@@ -841,7 +845,7 @@ def __init__(self, name):
841845
def enter(self, *args):
842846
check_visitor_fn_args(ast, *args)
843847
node = args[0]
844-
kind, value = node.kind, getattr(node, "value", None)
848+
kind, value = node.kind, get_value(node)
845849
name = self.name
846850
visited.append([f"no-{name}", "enter", kind, value])
847851
if kind == "field" and node.name.value == name:
@@ -850,7 +854,7 @@ def enter(self, *args):
850854
def leave(self, *args):
851855
check_visitor_fn_args(ast, *args)
852856
node = args[0]
853-
kind, value = node.kind, getattr(node, "value", None)
857+
kind, value = node.kind, get_value(node)
854858
name = self.name
855859
visited.append([f"no-{name}", "leave", kind, value])
856860

@@ -902,15 +906,15 @@ class TestVisitor(Visitor):
902906
def enter(self, *args):
903907
check_visitor_fn_args(ast, *args)
904908
node = args[0]
905-
kind, value = node.kind, getattr(node, "value", None)
909+
kind, value = node.kind, get_value(node)
906910
visited.append(["enter", kind, value])
907911
if kind == "name" and node.value == "x":
908912
return BREAK
909913

910914
def leave(self, *args):
911915
check_visitor_fn_args(ast, *args)
912916
node = args[0]
913-
kind, value = node.kind, getattr(node, "value", None)
917+
kind, value = node.kind, get_value(node)
914918
visited.append(["leave", kind, value])
915919

916920
visit(ast, ParallelVisitor([TestVisitor()]))
@@ -941,7 +945,7 @@ def __init__(self, name):
941945
def enter(self, *args):
942946
check_visitor_fn_args(ast, *args)
943947
node = args[0]
944-
kind, value = node.kind, getattr(node, "value", None)
948+
kind, value = node.kind, get_value(node)
945949
name = self.name
946950
visited.append([f"break-{name}", "enter", kind, value])
947951
if kind == "name" and node.value == name:
@@ -950,7 +954,7 @@ def enter(self, *args):
950954
def leave(self, *args):
951955
check_visitor_fn_args(ast, *args)
952956
node = args[0]
953-
kind, value = node.kind, getattr(node, "value", None)
957+
kind, value = node.kind, get_value(node)
954958
name = self.name
955959
visited.append([f"break-{name}", "leave", kind, value])
956960

@@ -988,13 +992,13 @@ class TestVisitor(Visitor):
988992
def enter(self, *args):
989993
check_visitor_fn_args(ast, *args)
990994
node = args[0]
991-
kind, value = node.kind, getattr(node, "value", None)
995+
kind, value = node.kind, get_value(node)
992996
visited.append(["enter", kind, value])
993997

994998
def leave(self, *args):
995999
check_visitor_fn_args(ast, *args)
9961000
node = args[0]
997-
kind, value = node.kind, getattr(node, "value", None)
1001+
kind, value = node.kind, get_value(node)
9981002
visited.append(["leave", kind, value])
9991003
if kind == "name" and node.value == "x":
10001004
return BREAK
@@ -1028,14 +1032,14 @@ def __init__(self, name):
10281032
def enter(self, *args):
10291033
check_visitor_fn_args(ast, *args)
10301034
node = args[0]
1031-
kind, value = node.kind, getattr(node, "value", None)
1035+
kind, value = node.kind, get_value(node)
10321036
name = self.name
10331037
visited.append([f"break-{name}", "enter", kind, value])
10341038

10351039
def leave(self, *args):
10361040
check_visitor_fn_args(ast, *args)
10371041
node = args[0]
1038-
kind, value = node.kind, getattr(node, "value", None)
1042+
kind, value = node.kind, get_value(node)
10391043
name = self.name
10401044
visited.append([f"break-{name}", "leave", kind, value])
10411045
if kind == "field" and node.name.value == name:
@@ -1098,13 +1102,13 @@ class TestVisitor2(Visitor):
10981102
def enter(self, *args):
10991103
check_visitor_fn_args(ast, *args)
11001104
node = args[0]
1101-
kind, value = node.kind, getattr(node, "value", None)
1105+
kind, value = node.kind, get_value(node)
11021106
visited.append(["enter", kind, value])
11031107

11041108
def leave(self, *args):
11051109
check_visitor_fn_args(ast, *args, is_edited=True)
11061110
node = args[0]
1107-
kind, value = node.kind, getattr(node, "value", None)
1111+
kind, value = node.kind, get_value(node)
11081112
visited.append(["leave", kind, value])
11091113

11101114
edited_ast = visit(ast, ParallelVisitor([TestVisitor1(), TestVisitor2()]))
@@ -1154,13 +1158,13 @@ class TestVisitor2(Visitor):
11541158
def enter(self, *args):
11551159
check_visitor_fn_args(ast, *args)
11561160
node = args[0]
1157-
kind, value = node.kind, getattr(node, "value", None)
1161+
kind, value = node.kind, get_value(node)
11581162
visited.append(["enter", kind, value])
11591163

11601164
def leave(self, *args):
11611165
check_visitor_fn_args(ast, *args, is_edited=True)
11621166
node = args[0]
1163-
kind, value = node.kind, getattr(node, "value", None)
1167+
kind, value = node.kind, get_value(node)
11641168
visited.append(["leave", kind, value])
11651169

11661170
edited_ast = visit(ast, ParallelVisitor([TestVisitor1(), TestVisitor2()]))

0 commit comments

Comments
 (0)