def test_init(self): """Unpaired region should generate right freqs, even after change""" freqs = Freqs({'C':10,'U':1, 'A':0}) r = UnpairedRegion('NN', freqs) seq = r.Current assert seq[0] in 'CU' assert seq[1] in 'CU' self.assertEqual(len(seq), 2) fd = [] for i in range(1000): r.refresh() fd.append(str(seq)) fd = Freqs(''.join(fd)) observed = [fd['C'], fd['U']] expected = [1800, 200] self.assertSimilarFreqs(observed, expected) self.assertEqual(fd['U'] + fd['C'], 2000) freqs2 = Freqs({'A':5, 'U':5}) r.Composition = freqs2 r.Template = 'NNN' #note that changing the Template changes seq ref seq = r.Current self.assertEqual(len(seq), 3) assert seq[0] in 'AU' assert seq[1] in 'AU' assert seq[2] in 'AU' fd = [] for i in range(1000): r.refresh() fd.append(str(seq)) fd = Freqs(''.join(fd)) observed = [fd['A'], fd['U']] expected = [1500, 1500] self.assertSimilarFreqs(observed, expected) self.assertEqual(fd['A'] + fd['U'], 3000)
def test_init(self): """Unpaired region should generate right freqs, even after change""" freqs = Freqs({"C": 10, "U": 1, "A": 0}) r = UnpairedRegion("NN", freqs) seq = r.Current assert seq[0] in "CU" assert seq[1] in "CU" self.assertEqual(len(seq), 2) fd = [] for i in range(1000): r.refresh() fd.append(str(seq)) fd = Freqs("".join(fd)) observed = [fd["C"], fd["U"]] expected = [1800, 200] self.assertSimilarFreqs(observed, expected) self.assertEqual(fd["U"] + fd["C"], 2000) freqs2 = Freqs({"A": 5, "U": 5}) r.Composition = freqs2 r.Template = "NNN" # note that changing the Template changes seq ref seq = r.Current self.assertEqual(len(seq), 3) assert seq[0] in "AU" assert seq[1] in "AU" assert seq[2] in "AU" fd = [] for i in range(1000): r.refresh() fd.append(str(seq)) fd = Freqs("".join(fd)) observed = [fd["A"], fd["U"]] expected = [1500, 1500] self.assertSimilarFreqs(observed, expected) self.assertEqual(fd["A"] + fd["U"], 3000)