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)
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)
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)
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)
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)
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)
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)
def test_noVariantSites_oneBlock(self): prg_seq = 'ACTGTCCTC' regions = prg.parse(prg_seq) regions = [region for region in regions] self.assertEqual(len(regions), 1)
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)