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) )
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))
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))
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))