Exemplo n.º 1
0
 def test_memoryLeaks(self):
     sm = _getMemUsage()
     for x in range(1000):
         self.randArgs()
         bindings.calcHeterodimer(
             seq1=self.seq1,
             seq2=self.seq2,
             mv_conc=self.mv_conc,
             dv_conc=self.dv_conc,
             dntp_conc=self.dntp_conc,
             dna_conc=self.dna_conc,
             temp_c=self.temp_c,
             max_loop=self.max_loop,
         )
     sleep(0.1)  # Pause for any GC
     em = _getMemUsage()
     print("\n\tMemory usage before 1k runs of calcHeterodimer: ", sm)
     print("\tMemory usage after 1k runs of calcHeterodimer:  ", em)
     print("\t\t\t\t\tDifference: \t", em - sm)
     if em - sm > 500:
         raise AssertionError(
             "Memory usage increase after 1k runs of \n\t"
             "calcHeterodimer > 500 bytes -- potential \n\t"
             "memory leak (mem increase: {})".format(em - sm)
         )
Exemplo n.º 2
0
 def test_calcHeterodimer(self):
     for _ in range(100):
         self.randArgs()
         binding_res = bindings.calcHeterodimer(
             seq1=self.seq1,
             seq2=self.seq2,
             mv_conc=self.mv_conc,
             dv_conc=self.dv_conc,
             dntp_conc=self.dntp_conc,
             dna_conc=self.dna_conc,
             temp_c=self.temp_c,
             max_loop=self.max_loop,
             output_structure=True
         )
         wrapper_res = wrappers.calcHeterodimer(
             seq1=self.seq1,
             seq2=self.seq2,
             mv_conc=self.mv_conc,
             dv_conc=self.dv_conc,
             dntp_conc=self.dntp_conc,
             dna_conc=self.dna_conc,
             temp_c=self.temp_c,
             max_loop=self.max_loop
         )
         self.assertEqual(int(binding_res.tm), int(wrapper_res.tm))
         self.assertEqual(
             binding_res.ascii_structure,
             wrapper_res.ascii_structure
         )
         # Ensure that order of sequences does not matter
         # Should be fixed as of Primer3 2.3.7 update
         binding_12_res = bindings.calcHeterodimer(
             seq1=self.seq1,
             seq2=self.seq2,
             mv_conc=self.mv_conc,
             dv_conc=self.dv_conc,
             dntp_conc=self.dntp_conc,
             dna_conc=self.dna_conc,
             temp_c=self.temp_c,
             max_loop=self.max_loop,
             output_structure=True
         )
         binding_21_res = bindings.calcHeterodimer(
             seq1=self.seq1,
             seq2=self.seq2,
             mv_conc=self.mv_conc,
             dv_conc=self.dv_conc,
             dntp_conc=self.dntp_conc,
             dna_conc=self.dna_conc,
             temp_c=self.temp_c,
             max_loop=self.max_loop
         )
         self.assertEqual(int(binding_12_res.tm), int(binding_21_res.tm))
Exemplo n.º 3
0
 def test_calcHeterodimer(self):
     for _ in range(25):
         self.randArgs()
         binding_res = bindings.calcHeterodimer(
                             seq1=self.seq1,
                             seq2=self.seq2,
                             mv_conc=self.mv_conc,
                             dv_conc=self.dv_conc,
                             dntp_conc=self.dntp_conc,
                             dna_conc=self.dna_conc,
                             temp_c=self.temp_c,
                             max_loop=self.max_loop)
         wrapper_res = wrappers.calcHeterodimer(
                             seq1=self.seq1,
                             seq2=self.seq2,
                             mv_conc=self.mv_conc,
                             dv_conc=self.dv_conc,
                             dntp_conc=self.dntp_conc,
                             dna_conc=self.dna_conc,
                             temp_c=self.temp_c,
                             max_loop=self.max_loop)
         if not wrapper_res:
             self.assertTrue(binding_res == None)
         else:
             self.assertEqual(int(binding_res.tm), int(wrapper_res.tm))
Exemplo n.º 4
0
 def test_memoryLeaks(self):
     sm = _getMemUsage()
     for x in range(100):
         self.randArgs()
         bindings.calcHeterodimer(seq1=self.seq1,
                                  seq2=self.seq2,
                                  mv_conc=self.mv_conc,
                                  dv_conc=self.dv_conc,
                                  dntp_conc=self.dntp_conc,
                                  dna_conc=self.dna_conc,
                                  temp_c=self.temp_c,
                                  max_loop=self.max_loop)
     sleep(0.1)  # Pause for any GC
     em = _getMemUsage()
     print('\n\tMemory usage before 1k runs of calcHeterodimer: ', sm)
     print('\tMemory usage after 1k runs of calcHeterodimer:  ', em)
     print('\t\t\t\t\tDifference: \t', em - sm)
     if em - sm > 500:
         raise AssertionError(
             'Memory usage increase after 1k runs of \n\t'
             'calcHeterodimer > 500 bytes -- potential \n\t'
             'memory leak (mem increase: {})'.format(em - sm))
 def test_calcHeterodimer(self):
     for _ in range(25):
         self.randArgs()
         binding_res = bindings.calcHeterodimer(
                             seq1=self.seq1,
                             seq2=self.seq2,
                             mv_conc=self.mv_conc,
                             dv_conc=self.dv_conc,
                             dntp_conc=self.dntp_conc,
                             dna_conc=self.dna_conc,
                             temp_c=self.temp_c,
                             max_loop=self.max_loop)
         wrapper_res = wrappers.calcHeterodimer(
                             seq1=self.seq1,
                             seq2=self.seq2,
                             mv_conc=self.mv_conc,
                             dv_conc=self.dv_conc,
                             dntp_conc=self.dntp_conc,
                             dna_conc=self.dna_conc,
                             temp_c=self.temp_c,
                             max_loop=self.max_loop)
         self.assertEqual(int(binding_res.tm), int(wrapper_res.tm))