예제 #1
0
 def test_get_pair_pos_rev(self):
     fold = '((.(.)))'
     seq = 'TTGCNGAA'
     folder = fn.Fold(fold, seq)
     pos = 6
     (pos, fold) = folder._reverse(pos)
     pair_pos = folder._get_pair(pos)
     self.assertEquals(len(fold) - 1 - pair_pos, 1)
예제 #2
0
def check_hairpin(hairpin_fold, seq):
    """here are the necessary condition for a hairpin:
    is_simple
    20 <= len <= 80
    get_Aprimes() > 1
    """
    hairp_fold = fn.Fold(hairpin_fold, seq)
    simple = hairp_fold.is_simple()
    leng = 19 < hairp_fold.len < 81
    aPrimes = hairp_fold.get_Aprimes()
    return simple, leng, aPrimes
예제 #3
0
 def test_get_pair1(self):
     fold = '.(((...))).'
     folder = fn.Fold(fold)
     pair = folder._get_pair(1)
     self.assertEquals(9, pair)
예제 #4
0
 def test_k10(self):
     fold = '.(((((((((((((((((........))))))).))).))))))).'
     seq = 'ACTTGATTGTATTTTTAAATTAATTCTTAAAAACTACAAATTAAGA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(2, len(aPrimes))
예제 #5
0
 def test_osk(self):
     fold = '.((((((((((((...((.(((((((((((((((..((....))))))))........)))))..)))))).)))))))))))).'
     seq = 'TGCTTTACTTGGAAAATTCGCTTGCACAAAATCAACGCCGCGGCTGATTTATTATTGATGTGCTCAAGCAAATTCAAGTGAAGCA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(5, len(aPrimes))
예제 #6
0
 def test_hairy(self):
     fold = '.(((((((((((.((((.((((....)).)).)))).))...))))))))).'
     seq = 'AGACATTTCACATCATTCGCCGGGATTGCGCAAATGTTGCTTTGAAGTGTTG'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(2, len(aPrimes))
예제 #7
0
 def test_fushi2(self):
     fold = '.(((((((((((((..(((((((.........))))))).......)))))..)))).)))).'
     seq = 'GCGCACTTCTCTCGACCATTTGTAGGTGACACGCAAATGACACAGCCGAGAACGAAGCTGCGA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(3, len(aPrimes))
예제 #8
0
 def test_count2_Aprimes(self):
     fold = '.(((.(((...))).))).'
     seq = 'NAAANGGGNNNCCCNTTTN'
     folder = fn.Fold(fold, seq)
     self.assertEquals(2, len(folder.get_Aprimes()))
예제 #9
0
 def test_get_pair_rev2(self):
     fold = '(.((.(...)).))'
     folder = fn.Fold(fold)
     pair = folder._get_pair(13)
     self.assertEquals(0, pair)
예제 #10
0
 def test_orb(self):
     fold = '.((((((((((((((((((.....)))))))))))).)))))).'
     seq = 'GGAATTTCAATTTTTAAGAAAACATTTTAAAAATTGTAAATTCG'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(4, len(aPrimes))
예제 #11
0
 def test_grk(self):
     fold = '.((((.((((.((((((((((.......))).)))))))...))))))))'
     seq = 'TTTCGTGCTCTCAACAATTGTCGCCGTCACAGATTGTTGTTCGAGCCGAA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(2, len(aPrimes))
예제 #12
0
 def test_wg(self):
     fold = '.((((((((((((...(((((......)))))..)))))).)))))).'
     seq = 'ACTGCTTGCATACTGCTTTGGGCAGGACCAAAACGTATGCGAAGTGGA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(2, len(aPrimes))
예제 #13
0
 def test_get_pair_pos(self):
     fold = '((.(.)))'
     seq = 'TTGCNGAA'
     folder = fn.Fold(fold, seq)
     pair_pos = folder._get_pair(0)
     self.assertEquals(pair_pos, 7)
예제 #14
0
 def test_count1_Aprime_porcodio(self):
     fold = '((.(.)))'
     seq = 'TTGCNGAA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(0, len(aPrimes))
예제 #15
0
 def test_count1_Aprime_long(self):
     fold = '.((((((...)))))).'
     seq = 'NAAAGGGNNNCCCTTTN'
     folder = fn.Fold(fold, seq)
     self.assertEquals(1, len(folder.get_Aprimes()))
예제 #16
0
 def test_get_pair2(self):
     fold = '.(..(.(..).)).'
     folder = fn.Fold(fold)
     pair = folder._get_pair(4)
     self.assertEquals(11, pair)
예제 #17
0
 def test_get_pair_rev1(self):
     fold = '.((.(...).)).'
     folder = fn.Fold(fold)
     pair = folder._get_pair(10)
     self.assertEquals(2, pair)
예제 #18
0
 def test_bcd(self):
     fold = '.((((((((.(((((((.((((((.........)))))))))..))))..)))))))).'
     seq = 'AAAATGTTTCTCTTGGGCGTAATCTCATACAATGATTACCCTTAAAGATCGAACATTTA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(4, len(aPrimes))
예제 #19
0
 def test_corner_case(self):
     fold = '(((((.(((...))).)))))......'
     seq = 'GTTTTATCATTATGGGAAAATATAAGC'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(2, len(aPrimes))
예제 #20
0
 def test_fushi1(self):
     fold = '.(((((((((((...(((((((((....))))))))).)))..)))))))).'
     seq = 'GGCGCACTCCCTACGGTGCCCAGGACATTTTGGGCACAAGGACGAGTGCGCA'
     folder = fn.Fold(fold, seq)
     aPrimes = folder.get_Aprimes()
     self.assertEquals(4, len(aPrimes))