示例#1
0
def test_genotype_gnomic_format(gnomic_formatter):
    assert gnomic_formatter.format_genotype(Genotype.parse('+geneA -geneB site>feature')) \
        == '+geneA -geneB site>feature'
    assert gnomic_formatter.format_genotype(Genotype.parse('+geneA -geneB site>>feature')) \
        == '+geneA -geneB site>feature'
    assert gnomic_formatter.format_genotype(Genotype.parse('+geneA -geneB -geneA')) == '-geneB'
    assert gnomic_formatter.format_genotype(Genotype.parse('+{geneA, geneB} -{geneC, geneD}')) \
        == '+{geneA, geneB} -{geneC, geneD}'
def test_added_features():
    genotype = Genotype.parse('+geneA -geneB +geneB -geneC')
    assert genotype.added_features == {Feature('geneA')}
    genotype = Genotype.parse('+{geneA, geneB:geneC}')
    assert genotype.added_features == {
        Feature('geneA'), Feature('geneB'),
        Feature('geneC')
    }
示例#3
0
def test_genotype_gnomic_format(gnomic_formatter):
    assert gnomic_formatter.format_genotype(Genotype.parse('+geneA -geneB site>feature')) \
        == '+geneA -geneB site>feature'
    assert gnomic_formatter.format_genotype(Genotype.parse('+geneA -geneB site>>feature')) \
        == '+geneA -geneB site>feature'
    assert gnomic_formatter.format_genotype(
        Genotype.parse('+geneA -geneB -geneA')) == '-geneB'
    assert gnomic_formatter.format_genotype(Genotype.parse('+{geneA, geneB} -{geneC, geneD}')) \
        == '+{geneA, geneB} -{geneC, geneD}'
示例#4
0
def test_genotype_text_format(text_formatter):
    assert text_formatter.format_genotype(Genotype.parse('+geneA')) == 'geneA'
    assert text_formatter.format_genotype(Genotype.parse('-geneA')) == '\u0394geneA'
    assert text_formatter.format_genotype(Genotype.parse('siteA>(pA)')) == '\u0394siteA\u2192(pA)'
    assert text_formatter.format_genotype(Genotype.parse('foo>bar')) == '\u0394foo\u2192bar'
    assert text_formatter.format_genotype(Genotype.parse('foo>>bar')) == '\u0394foo\u2192bar'
    assert text_formatter.format_genotype(Genotype.parse('-(pA)')) == '\u0394(pA)'
    assert text_formatter.format_genotype(Genotype.parse('+geneA(x)')) == 'geneA(x)'
    assert text_formatter.format_genotype(Genotype.parse('+geneA(var1, var2)')) == 'geneA(var1; var2)'
    assert text_formatter.format_genotype(Genotype.parse('+{geneA, geneB}')) == '{geneA, geneB}'
def test_added_fusion_features():
    genotype = Genotype.parse(
        '+geneA -geneB:geneC +geneB:geneC +{geneA, geneB}')
    assert genotype.added_fusion_features == {
        Feature('geneA'),
        CompositeAnnotation(Feature('geneA'), Feature('geneB'))
    }
示例#6
0
def test_genotype_text_format(text_formatter):
    assert text_formatter.format_genotype(Genotype.parse('+geneA')) == 'geneA'
    assert text_formatter.format_genotype(
        Genotype.parse('-geneA')) == '\u0394geneA'
    assert text_formatter.format_genotype(
        Genotype.parse('siteA>(pA)')) == '\u0394siteA\u2192(pA)'
    assert text_formatter.format_genotype(
        Genotype.parse('foo>bar')) == '\u0394foo\u2192bar'
    assert text_formatter.format_genotype(
        Genotype.parse('foo>>bar')) == '\u0394foo\u2192bar'
    assert text_formatter.format_genotype(
        Genotype.parse('-(pA)')) == '\u0394(pA)'
    assert text_formatter.format_genotype(
        Genotype.parse('+geneA(x)')) == 'geneA(x)'
    assert text_formatter.format_genotype(
        Genotype.parse('+geneA(var1, var2)')) == 'geneA(var1; var2)'
    assert text_formatter.format_genotype(
        Genotype.parse('+{geneA, geneB}')) == '{geneA, geneB}'
示例#7
0
def test_genotype_html_format(html_formatter):
    assert html_formatter.format_genotype(Genotype.parse('+geneA')) == '<span class="gnomic-feature">geneA</span>'
    assert html_formatter.format_genotype(Genotype.parse('-geneB')) \
        == '\u0394<span class="gnomic-feature">geneB</span>'
    assert html_formatter.format_genotype(Genotype.parse('foo>>bar')) \
        == '\u0394<span class="gnomic-feature">foo</span>\u2192<span class="gnomic-feature">bar</span>'
    assert html_formatter.format_genotype(Genotype.parse('(pA)')) \
        == '<span class="gnomic-plasmid">(<span class="gnomic-plasmid-name">pA</span>)</span>'
    assert html_formatter.format_genotype(Genotype.parse('+geneA(x)')) \
        == '<span class="gnomic-feature">geneA<sup>x</sup></span>'
    assert html_formatter.format_genotype(Genotype.parse('+geneA(x; wild-type; mutant; y)')) \
        == '<span class="gnomic-feature">geneA<sup>x; wild-type; mutant; y</sup></span>'
    assert html_formatter.format_genotype(Genotype.parse('+foo:bar')) \
        == '<span class="gnomic-fusion"><span class="gnomic-feature">foo</span>:' \
           '<span class="gnomic-feature">bar</span></span>'
示例#8
0
def test_genotype_html_format(html_formatter):
    assert html_formatter.format_genotype(Genotype.parse(
        '+geneA')) == '<span class="gnomic-feature">geneA</span>'
    assert html_formatter.format_genotype(Genotype.parse('-geneB')) \
        == '\u0394<span class="gnomic-feature">geneB</span>'
    assert html_formatter.format_genotype(Genotype.parse('foo>>bar')) \
        == '\u0394<span class="gnomic-feature">foo</span>\u2192<span class="gnomic-feature">bar</span>'
    assert html_formatter.format_genotype(Genotype.parse('(pA)')) \
        == '<span class="gnomic-plasmid">(<span class="gnomic-plasmid-name">pA</span>)</span>'
    assert html_formatter.format_genotype(Genotype.parse('+geneA(x)')) \
        == '<span class="gnomic-feature">geneA<sup>x</sup></span>'
    assert html_formatter.format_genotype(Genotype.parse('+geneA(x; wild-type; mutant; y)')) \
        == '<span class="gnomic-feature">geneA<sup>x; wild-type; mutant; y</sup></span>'
    assert html_formatter.format_genotype(Genotype.parse('+foo:bar')) \
        == '<span class="gnomic-fusion"><span class="gnomic-feature">foo</span>:' \
           '<span class="gnomic-feature">bar</span></span>'
示例#9
0
def test_at_locus_gnomic_format(gnomic_formatter):
    assert gnomic_formatter.format_at_locus(AtLocus(Feature('foo'), Feature('bar'))) == 'foo@bar'
    assert gnomic_formatter.format_genotype(Genotype.parse('foo@bar>new')) == 'foo@bar>new'
示例#10
0
def test_at_locus_gnomic_format(gnomic_formatter):
    assert gnomic_formatter.format_at_locus(
        AtLocus(Feature('foo'), Feature('bar'))) == 'foo@bar'
    assert gnomic_formatter.format_genotype(
        Genotype.parse('foo@bar>new')) == 'foo@bar>new'
def test_added_fusions():
    genotype = Genotype.parse('+A:B +B:C -B:C -C:D')
    assert genotype.added_fusions == {Fusion(Feature('A'), Feature('B'))}
def test_removed_plasmids():
    genotype = Genotype.parse('+gene.A (pA) (pB) -(pB) -(pC)')
    assert genotype.removed_plasmids == {Plasmid('pC')}
def test_removed_fusion_features():
    genotype = Genotype.parse('+geneA -geneB:geneC -geneA +{geneA, geneB}')
    assert genotype.removed_fusion_features == {
        Fusion(Feature('geneB'), Feature('geneC'))
    }
def test_added_plasmids():
    genotype = Genotype.parse('+gene.B (pA) (pB) -(pB) -(pC)')
    assert genotype.added_plasmids == {Plasmid('pA')}
def test_removed_features():
    genotype = Genotype.parse('+geneA -geneB +geneB -geneC')
    assert genotype.removed_features == {Feature('geneC')}
def test_removed_fusions():
    genotype = Genotype.parse('+A:B +B:C -B:C -C:D')
    assert genotype.removed_fusions == {Fusion(Feature('C'), Feature('D'))}
示例#17
0
def chain(*gnomic_strings, **kwargs):
    parent = kwargs.pop('parent', None)
    genotype = Genotype.parse(gnomic_strings[0], parent=parent, **kwargs)
    for gnomic_string in gnomic_strings[1:]:
        genotype = Genotype.parse(gnomic_string, parent=genotype, **kwargs)
    return genotype
示例#18
0
 def chain(self, *definitions, **kwargs):
     genotype = Genotype.parse(definitions[0], **kwargs)
     for definition in definitions[1:]:
         genotype = Genotype.parse(definition, parent=genotype, **kwargs)
     return genotype