def test_unequal_trees_of_depth_1(self): return self.run_test( args=[ tree_from_data([1, None, None]), tree_from_data([2, None, None]), ], answer=False, )
def test_example_2(self): return self.run_test( args=[ tree_from_data([3, [4, 1, [2, 0, None]], 5]), tree_from_data([4, 1, 2]), ], answer=False, )
def test_empty_trees(self): return self.run_test( args=[ tree_from_data([]), tree_from_data([]), ], answer=True, )
def test_example_3(self): return self.run_test( args=[ tree_from_data([1, 2, 1]), tree_from_data([1, 1, 2]), ], answer=False, )
def test_example_1(self): return self.run_test( args=[ tree_from_data([3, [4, 1, 2], 5]), tree_from_data([4, 1, 2]), ], answer=True, )
def test_example_1(self): return self.run_test( args=[ tree_from_data([1, 2, 3]), tree_from_data([1, 2, 3]), ], answer=True, )
def test_tree_data_of_None_gives_root_None(self): root = tree_from_data(None) self.assertIs(root, None) return
def test_tree_of_depth_1(self): return self.run_test( args=[ tree_from_data([1, None, None]), ], answer=1, )
def test_example_1(self): return self.run_test( args=[ tree_from_data([3, [9, None, None], [20, 15, 7]]), ], answer=3, )
def test_node_data_of_None_gives_node_None(self): node__data = None root = tree_from_data([node__data]) self.assertIs(root, None) return
def test_right_data_of_None_gives_right_None(self): node__data = _random_val() left__data = _random_val() right__data = None root = tree_from_data([node__data, left__data, right__data]) self.assertIs(root.right, None) return
def run_test__is_same_node( self, args: Iterable, answer: Any, ): (tree_data, p_data, q_data) = args root = tree_from_data(tree_data) p = node_from_data(p_data) q = node_from_data(q_data) return self.run_test( args=[root, p, q], transform_result=data_from_node, answer=answer, )