Exemple #1
0
    def toDSEQ(self, graph, edges, nodes):
        complements = self.generateComplements(nodes)
        dna = []
        offset = -10
        for edge in edges:
            seq = Dseq(edges[edge], complements[edge[1]], ovhg=offset)
            x = Dseqrecord(seq)
            x.name = edge[0] + "_" + edge[1]
            x.seq = seq
            dna.append(x)

        return dna
Exemple #2
0
def test_reverse_complement(monkeypatch):
    from pydna._pretty import pretty_str
    from pydna.assembly import Assembly
    from pydna.dseqrecord import Dseqrecord
    a = Dseqrecord("acgatgctatactgtgCCNCCtgtgctgtgctcta")
    #12345678901234
    b = Dseqrecord("tgtgctgtgctctaTTTTTTTtattctggctgtatc")
    #123456789012345
    c = Dseqrecord("tattctggctgtatcGGGGGtacgatgctatactgtg")
    a.name = "aaa"  #1234567890123456
    b.name = "bbb"
    c.name = "ccc"
    asm = Assembly((a, b, c), limit=14)
    x = asm.assemble_circular()[0]
    y = x.rc()
    z = y.rc()
    assert x.figure() == z.figure()
    assert x.detailed_figure() == z.detailed_figure()

    xfig = '''\
 -|aaa|14
|      \\/
|      /\\
|      14|bbb|15
|             \\/
|             /\\
|             15|ccc|16
|                    \\/
|                    /\\
|                    16-
|                       |
 -----------------------
     '''.rstrip()

    xdfig = pretty_str('''\
||||||||||||||||
acgatgctatactgtgCCNCCtgtgctgtgctcta
                     TGTGCTGTGCTCTA
                     tgtgctgtgctctaTTTTTTTtattctggctgtatc
                                          TATTCTGGCTGTATC
                                          tattctggctgtatcGGGGGtacgatgctatactgtg
                                                               ACGATGCTATACTGTG
    '''.rstrip() + "\n")

    assert x.figure() == xfig
    assert x.detailed_figure() == xdfig

    yfig = '''\
 -|ccc_rc|15
|         \\/
|         /\\
|         15|bbb_rc|14
|                   \\/
|                   /\\
|                   14|aaa_rc|16
|                             \\/
|                             /\\
|                             16-
|                                |
 --------------------------------
     '''.rstrip()

    ydfig = '''\
||||||||||||||||
cacagtatagcatcgtaCCCCCgatacagccagaata
                      GATACAGCCAGAATA
                      gatacagccagaataAAAAAAAtagagcacagcaca
                                            TAGAGCACAGCACA
                                            tagagcacagcacaGGNGGcacagtatagcatcgt
                                                               CACAGTATAGCATCGT
    '''.rstrip() + "\n"

    assert y.figure() == yfig
    assert y.detailed_figure() == ydfig