diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html index dc40625..5724a01 100644 --- a/docs/_templates/layout.html +++ b/docs/_templates/layout.html @@ -17,6 +17,7 @@ {% endfor %} {% else %}
latest
+
0.3.0
0.2.9
0.2.8
0.2.7
diff --git a/graphtage/pydiff.py b/graphtage/pydiff.py index 0bfa950..ae4f2af 100644 --- a/graphtage/pydiff.py +++ b/graphtage/pydiff.py @@ -212,9 +212,9 @@ def __init__(self, key, value): stack.append((obj, [], [obj.value])) elif isinstance(obj, dict): stack.append(({}, [], [DictValue(key=k, value=v) for k, v in reversed(list(obj.items()))])) - elif isinstance(python_obj, (list, tuple)): + elif isinstance(obj, (list, tuple)): stack.append(([], [], list(reversed(obj)))) - elif python_obj is None: + elif obj is None: new_node = NullNode() else: pyobj = PyObj(class_name=StringNode(obj.__class__.__name__, quoted=False), attrs=None) # type: ignore diff --git a/graphtage/version.py b/graphtage/version.py index 7cab2b0..2fbc10a 100644 --- a/graphtage/version.py +++ b/graphtage/version.py @@ -59,7 +59,7 @@ def git_branch() -> Optional[str]: """ -__version__: Tuple[Union[int, str], ...] = (0, 2, 9) +__version__: Tuple[Union[int, str], ...] = (0, 3, 0) if DEV_BUILD: branch_name = git_branch() diff --git a/test/test_pydiff.py b/test/test_pydiff.py index 48e6fe9..8addbec 100644 --- a/test/test_pydiff.py +++ b/test/test_pydiff.py @@ -23,3 +23,13 @@ def __init__(self, bar, baz): printer = graphtage.printer.Printer(ansi_color=True) print_diff(Foo("bar", "baz"), Foo("bar", "bak"), printer=printer) + + def test_nested_tuple_diff(self): + tree = build_tree({"a": (1, 2)}) + self.assertIsInstance(tree, graphtage.DictNode) + children = tree.children() + self.assertEqual(1, len(children)) + kvp = children[0] + self.assertIsInstance(kvp, graphtage.KeyValuePairNode) + self.assertIsInstance(kvp.key, graphtage.StringNode) + self.assertIsInstance(kvp.value, graphtage.ListNode)