def __init__(self,name,dir,domain,region,seq): self.name = name self.direction = dir self.original_seq = seq self.domain = domain self.region = region self.primer_names = {} self.expanded_seqs = putils.expand(self.original_seq)
def test_expand_primer(self): self.assertEqual(sorted(putils.expand('TG[GA]GNGTAA?AG')),sorted(['TGGGGGTAAG', 'TGGGAGTAAAG', 'TGGGCGTAAG', 'TGGGTGTAAAG', 'TGGGGGTAAAG', 'TGAGAGTAAAG', 'TGAGGGTAAG', 'TGAGCGTAAG', 'TGAGTGTAAAG', 'TGAGTGTAAG', 'TGGGCGTAAAG', 'TGGGTGTAAG', 'TGGGAGTAAG', 'TGAGAGTAAG', 'TGAGCGTAAAG', 'TGAGGGTAAAG']))
def test_expand_Lbrace(self): self.assertEqual( sorted(putils.expand('TC{2,5}G')),sorted( ['TCCG','TCCCG','TCCCCG','TCCCCCG']) )
def test_expand_star(self): self.assertEqual( sorted(putils.expand('TT*G')), sorted( ['TG','TTG','TTTG']) )
def test_expand_plus(self): self.assertEqual( sorted(putils.expand('TT+G')), sorted( ['TTG','TTTG']) )
def test_expand_qmark(self): self.assertEqual( sorted(putils.expand('TT?G')), sorted( ['TTG','TG']) )
def test_expand_Lbracket(self): self.assertEqual( sorted(putils.expand('T[TG]G')), sorted( ['TTG','TGG']) )
def test_expand_K(self): self.assertEqual( sorted(putils.expand('TKG')), sorted( ['TTG','TGG']) )
def test_expand_M(self): self.assertEqual( sorted(putils.expand('TMG')), sorted( ['TAG','TCG']) )
def test_expand_S(self): self.assertEqual( sorted(putils.expand('TSG')), sorted( ['TGG','TCG']) )
def test_expand_W(self): self.assertEqual( sorted(putils.expand('TWG')), sorted( ['TAG','TTG']) )
def test_expand_Y(self): self.assertEqual( sorted(putils.expand('TYG')), sorted( ['TCG','TTG']) )
def test_expand_R(self): self.assertEqual( sorted(putils.expand('TRG')), sorted( ['TAG','TGG']) )
def test_expand_dot(self): self.assertEqual( sorted(putils.expand('T.G')), sorted( ['TAG','TTG','TGG','TCG']) )