def test_remove_gene(self, inst_mock): """ Ensures genes are removed correctly. """ gnm = Genome(0) gene_one = "gene one" gene_two = "gene two" gene_three = "gene three" gnm._genes = [gene_one, gene_two, gene_three] gnm.remove_gene(gene_two) assert gnm._genes == [gene_one, gene_three] # Ensure both remain
def test_add_gene(self, inst_mock): """ Ensures the adding of genes functions. """ gnm = Genome(0) gnm.add_gene(True) assert gnm._genes == [True] # Try adding multiple times gnm.add_gene(False) assert gnm._genes == [True, False] gnm.add_gene(True) assert gnm._genes == [True, False, True]
def test_init(self, inst_mock): """ Tests the instantiation of a genome. """ gnm = Genome(0) assert gnm._genes == [] assert inst_mock.called
def test_clear_genome(self, inst_mock): """ Ensures the gene count can be set correctly. """ gnm = Genome(5) gnm._genes = [1, 2, 3, 4, 5] gnm.clear_genes() assert len(gnm.get_genes()) == 0
def test_set_expected_genome_size(self, inst_mock): """ Ensures the gene count can be set correctly. """ gnm = Genome(5) gnm._expected_genome_size = 6 gnm._set_expected_genome_size(500) assert gnm._expected_genome_size == 500
def test_get_genes(self, inst_mock): """ Ensures all genes are returned correctly. """ gnm = Genome(0) gnm._genes = [True, False] assert gnm._genes is gnm.get_genes( ) # is checks references not equivalency.
def test_evaluate(self, inst_mock): """ Tests the evaluate method functions for a genome. """ gnm = Genome(0) self.assertRaises(NotImplementedError, gnm.evaluate, None)
def __init__(self, genome_size): """ Initialises the number of genes required in this genome. """ Genome.__init__(self, genome_size)