Esempio n. 1
0
    def test_nonVariantSites_singleAllelePerBlock(self):
        prg_seq = 'ACTGT5A6T6A5CC7CA8T7CC'
        regions = prg.parse(prg_seq)

        for region in regions:
            if not region.is_variant_site:
                self.assertEqual(len(region.alleles), 1)
Esempio n. 2
0
 def test_noVariantSites_oneAlleleBlock(self):
     prg_seq = 'ACTGTCCTC'
     regions = prg.parse(prg_seq)
     region = [region for region in regions][0]
     result = [''.join(x) for x in region.alleles]
     expected = ['ACTGTCCTC']
     self.assertEqual(result, expected)
Esempio n. 3
0
 def test_threeVariantAlleles_orderedInAlleleAttr(self):
     prg_seq = 'TT5A6T6AA5CC'
     regions = prg.parse(prg_seq)
     variant_site_block = [
         region for region in regions if region.is_variant_site
     ][0]
     expected = ['A', 'T', 'AA']
     result = [''.join(x) for x in variant_site_block.alleles]
     self.assertEqual(result, expected)
Esempio n. 4
0
    def test_twoVariantSites_correctVariantMarkers(self):
        prg_seq = 'ACTGT5A6T6A5CC7CA8T7CC'
        regions = prg.parse(prg_seq)

        variant_markers = []
        for region in regions:
            if region.is_variant_site:
                variant_markers.append(region.variant_site_marker)

        expected = ['5', '7']
        self.assertEqual(variant_markers, expected)
Esempio n. 5
0
    def test_bothEdgesMultiCharVarSiteMarker_correctBlocks(self):
        prg_seq = '97AC98GT97'
        regions = prg.parse(prg_seq)

        expected = [
            ['AC', 'GT'],
        ]

        for region, expected in zip(regions, expected):
            result = [''.join(x) for x in region.alleles]
            self.assertEqual(result, expected)
Esempio n. 6
0
    def test_singleVariantSite_singleVariantBlock(self):
        prg_seq = '5A6T5'
        regions = prg.parse(prg_seq)

        expected = [
            ['A', 'T'],
        ]

        for region, expected in zip(regions, expected):
            result = [''.join(x) for x in region.alleles]
            self.assertEqual(result, expected)
Esempio n. 7
0
    def test_bothEdgesVariantSite_correctBlocks(self):
        prg_seq = '5A6T5AA7C8A7'
        regions = prg.parse(prg_seq)

        expected = [
            ['A', 'T'],  # first variant site
            ['AA'],
            ['C', 'A'],  # second variant site
        ]

        for region, expected in zip(regions, expected):
            result = [''.join(x) for x in region.alleles]
            self.assertEqual(result, expected)
Esempio n. 8
0
 def test_noVariantSites_oneBlock(self):
     prg_seq = 'ACTGTCCTC'
     regions = prg.parse(prg_seq)
     regions = [region for region in regions]
     self.assertEqual(len(regions), 1)
Esempio n. 9
0
    def test_twoVariantSites_correctNumVariantSites(self):
        prg_seq = 'AC5A6T6A5CC7CA8T7CC'
        regions = prg.parse(prg_seq)

        num_variant_sites = sum(region.is_variant_site for region in regions)
        self.assertEqual(num_variant_sites, 2)