Пример #1
0
    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())