def test_normal(self):
     p1 = ['ag', 'ct', 'tt']
     p2 = ['tt', 'ct', 'ag']
     tr1 = trie_builder.PrefixTrieConstruction(p1)
     tr2 = trie_builder.PrefixTrieConstruction(p2)
     val = trie_methods.trie_equivalence(tr1, tr2)
     self.assertTrue(val)
 def test_normal_2(self):
     patterns = ["t", "a"]
     trie = graph.Graph()
     trie.node("A")
     trie.node("B")
     trie.node("C")
     trie.edge("f", "A", "B", "t")
     trie.edge("g", "A", "C", "a")
     expected = trie_builder.PrefixTrieConstruction(patterns)
     val = trie_methods.trie_equivalence(trie, expected)
     self.assertTrue(val)
    def test_same(self):
        pattern = "cg"
        trie = graph.Graph()
        trie.node("A")
        trie.node("B")
        trie.node("C")
        trie.edge("f", "A", "B", "c")
        trie.edge("g", "B", "C", "g")

        expected = trie_builder.incorporate(pattern, trie)

        val = trie_methods.trie_equivalence(expected, trie)
        self.assertTrue(val)
    def test_complex(self):
        patterns = ["cga", "cg", "gta"]
        trie = graph.Graph()
        trie.node("A")
        trie.node("B")
        trie.node("C")
        trie.node("D")
        trie.node("E")
        trie.node("F")
        trie.node("G")
        trie.edge("f", "A", "B", "c")
        trie.edge("g", "B", "C", "g")
        trie.edge("h", "C", "D", "a")
        trie.edge("i", "A", "E", "g")
        trie.edge("j", "E", "F", "t")
        trie.edge("k", "F", "G", "a")

        expected = trie_builder.PrefixTrieConstruction(patterns)
        val = trie_methods.trie_equivalence(trie, expected)
        self.assertTrue(val)