Example #1
0
    def test_triple_compact(self):
        from msa import Disjunct as d, Sub as s

        self.assertEqual(
            msa.compact(msa.msa(["ABC", "BCD", "BCX"])),
            [d((d((s("A"),), ()),), ()), s("BC"), d((d((), (s("D"),)),), (s("X"),))],
        )
Example #2
0
    def test_edges(self):
        from msa import to_edges, Edge, Disjunct as d, Sub as s

        def new_edge(f, t):
            return Edge(f.seq, t.seq, f.id(), t.id())
        self.assertEqual(set([x for x in to_edges([d(s('A'), (s('B'), d(s('C'), s('D')))), s('E')])]),
                         set([
                             new_edge(s('START'), s('A')),
                             new_edge(s('START'), s('B')),
                             new_edge(s('B'), s('C')),
                             new_edge(s('B'), s('D')),
                             new_edge(s('E'), s('END')),
                             new_edge(s('C'), s('E')),
                             new_edge(s('D'), s('E')),
                             new_edge(s('A'), s('E')),
                         ]))
Example #3
0
 def test_triple_compact(self):
     from msa import Disjunct as d, Sub as s
     self.assertEqual(msa.compact(msa.msa(['ABC', 'BCD', 'BCX'])),
                      [d((d((s('A'),), ()),), ()),
                       s('BC'),
                       d((d((), (s('D'),)),), (s('X'),))])
Example #4
0
 def test_pair(self):
     from msa import Disjunct as d, Sub as s
     self.assertEqual(msa.msa(['ABC', 'BCDE']),
                      [d((s('A'),), ()),
                       s('B'), s('C'),
                       d((), (s('D'), s('E')))])
Example #5
0
    def test_edges(self):
        from msa import to_edges, Edge, Disjunct as d, Sub as s

        def new_edge(f, t):
            return Edge(f.seq, t.seq, f.id(), t.id())

        self.assertEqual(
            set([x for x in to_edges([d(s("A"), (s("B"), d(s("C"), s("D")))), s("E")])]),
            set(
                [
                    new_edge(s("START"), s("A")),
                    new_edge(s("START"), s("B")),
                    new_edge(s("B"), s("C")),
                    new_edge(s("B"), s("D")),
                    new_edge(s("E"), s("END")),
                    new_edge(s("C"), s("E")),
                    new_edge(s("D"), s("E")),
                    new_edge(s("A"), s("E")),
                ]
            ),
        )
Example #6
0
    def test_pair(self):
        from msa import Disjunct as d, Sub as s

        self.assertEqual(msa.msa(["ABC", "BCDE"]), [d((s("A"),), ()), s("B"), s("C"), d((), (s("D"), s("E")))])