def test_skip_too_much(self): model = RandomSequenceModel(num_mutations=120) for template in self.templates: model.add_template(template) m_num_mutations = model.num_mutations() to_skip = m_num_mutations + 10 expected_skipped = m_num_mutations expected_mutated = m_num_mutations - expected_skipped self._check_skip(model, to_skip, expected_skipped, expected_mutated)
def testSkipTooMuch(self): model = RandomSequenceModel(num_mutations=120) for template in self.templates: model.add_template(template) m_num_mutations = model.num_mutations() to_skip = m_num_mutations + 10 expected_skipped = m_num_mutations expected_mutated = m_num_mutations - expected_skipped self._check_skip(model, to_skip, expected_skipped, expected_mutated)
def testSkipHalf(self): model = RandomSequenceModel(num_mutations=120) for template in self.templates: model.add_template(template) m_num_mutations = model.num_mutations() to_skip = m_num_mutations // 2 expected_skipped = to_skip expected_mutated = m_num_mutations - expected_skipped self._check_skip(model, to_skip, expected_skipped, expected_mutated)
def test_num_mutations(self): num_mutation_list = [0, 1, 500, 1000, 10000] for expected_num_mutations in num_mutation_list: model = RandomSequenceModel(num_mutations=expected_num_mutations) for template in self.templates: model.add_template(template) m_num_mutations = model.num_mutations() self.assertEqual(expected_num_mutations, m_num_mutations) actual_mutations = 0 while model.mutate(): actual_mutations += 1 self.assertEqual(expected_num_mutations, actual_mutations)
def testNumMutations(self): num_mutation_list = [0, 1, 500, 1000, 10000] for expected_num_mutations in num_mutation_list: model = RandomSequenceModel(num_mutations=expected_num_mutations) for template in self.templates: model.add_template(template) m_num_mutations = model.num_mutations() self.assertEqual(expected_num_mutations, m_num_mutations) actual_mutations = 0 while model.mutate(): actual_mutations += 1 self.assertEqual(expected_num_mutations, actual_mutations)