def test_node_empty(self): """ Test TrieNode.empty method """ # empty node node = TrieNode() self.assertTrue(node.empty()) # nonempty node node.children[0] = TrieNode() self.assertFalse(node.empty())
def test_node_delete_child(self): """ Test TrieNode.delete_child method """ # add children node = TrieNode() children = [TrieNode() for i in range(len(string.ascii_lowercase))] node.children = children # ensure all children are deleted for i, letter in enumerate(string.ascii_lowercase): self.assertIsNotNone(node.children[i]) node.delete_child(letter) self.assertIsNone(node.children[i]) self.assertTrue(node.empty())