Skip to content

Commit 4fb6cd2

Browse files
committed
Improve tests for Path methods
Replicates graphql/graphql-js@f42cee9
1 parent be007d9 commit 4fb6cd2

File tree

1 file changed

+18
-22
lines changed

1 file changed

+18
-22
lines changed

tests/pyutils/test_path.py

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,23 @@
22

33

44
def describe_path():
5-
def add_path():
6-
path = Path(None, 0, None)
7-
assert path.prev is None
8-
assert path.key == 0
9-
prev, path = path, Path(path, 1, None)
10-
assert path.prev is prev
11-
assert path.key == 1
12-
prev, path = path, Path(path, "two", None)
13-
assert path.prev is prev
14-
assert path.key == "two"
5+
def can_create_a_path():
6+
first = Path(None, 1, "First")
7+
assert first.prev is None
8+
assert first.key == 1
9+
assert first.typename == "First"
1510

16-
def add_key():
17-
prev = Path(None, 0, None)
18-
path = prev.add_key("one")
19-
assert path.prev is prev
20-
assert path.key == "one"
11+
def can_add_a_new_key_to_an_existing_path():
12+
first = Path(None, 1, "First")
13+
second = first.add_key("two", "Second")
14+
assert second.prev is first
15+
assert second.key == "two"
16+
assert second.typename == "Second"
2117

22-
def as_list():
23-
path = Path(None, 1, None)
24-
assert path.as_list() == [1]
25-
path = path.add_key("two")
26-
assert path.as_list() == [1, "two"]
27-
path = path.add_key(3)
28-
assert path.as_list() == [1, "two", 3]
18+
def can_convert_a_path_to_a_list_of_its_keys():
19+
root = Path(None, 0, "Root")
20+
assert root.as_list() == [0]
21+
first = root.add_key("one", "First")
22+
assert first.as_list() == [0, "one"]
23+
second = first.add_key(2, "Second")
24+
assert second.as_list() == [0, "one", 2]

0 commit comments

Comments
 (0)