def test_organism_given_unique_default_name(self): self.assertTrue(self.organism.name) organism_1 = Organism() organism_2 = Organism() self.assertNotEqual(self.organism.name, organism_1.name) self.assertNotEqual(self.organism.name, organism_2.name) self.assertNotEqual(organism_1.name, organism_2.name)
def setUp(self): self.mock_organism = Mock(spec=Organism()) self.mock_organism.name = "mock_organism_name" self.mock_organism.die = Mock() self.mock_random = Mock(return_value=0.5) self.senescence = Senescence(self.mock_random) self.senescence.decorate(self.mock_organism)
def test_add_gene_logs_debug_message(self, mock_getLogger): mock_logger = Mock() mock_getLogger.return_value = mock_logger foo_enabler = self.TestEnabler() mock_organism_1 = Mock(spec=Organism()) mock_organism_1.name = 'mock_organism_name' foo_enabler.decorate(mock_organism_1) mock_logger.debug.assert_called_with( 'Adding gene TestEnabler to organism "mock_organism_name"')
def setUp(self): self.mock_organism = Mock(spec=Organism()) self.enabler = self.TestEnabler() self.enabler.decorate(self.mock_organism) self.non_enabler = BaseGene() self.test_genes = [ self.enabler, self.non_enabler, ]
class OrganismTest(TestCase): def setUp(self): self.context = {} self.organism = Organism() def test_organism_can_be_given_name(self): named_organism = Organism(name="Alfred") self.assertEqual(named_organism.name, "Alfred") def test_organism_given_unique_default_name(self): self.assertTrue(self.organism.name) organism_1 = Organism() organism_2 = Organism() self.assertNotEqual(self.organism.name, organism_1.name) self.assertNotEqual(self.organism.name, organism_2.name) self.assertNotEqual(organism_1.name, organism_2.name) def test_undecorated_organism_has_empty_genome(self): self.assertEqual(self.organism.genome, []) def test_set_context(self): self.organism.set_context(self.context) self.assertEqual(self.organism._context, self.context) def test_get_context(self): self.assertIsNone(self.organism.get_context()) self.organism.set_context(self.context) self.assertEqual(self.organism.get_context(), self.context)
def run(): print("Instantiating genes...") genes = [ Mortality(), Senescence(inject__random=random), ] print("Creating organisms...") organisms = [] for _ in range(20): organism = Organism() for gene in genes: gene.decorate(organism) organisms.append(organism) print("Running...") start_time = time.time() for n in range(1000): dead_count = 0 # print("====================") # print("age = ", n) for organism in organisms: organism.increment_age() # print(organism.name, organism.alive) if not organism.alive: dead_count += 1 # print(dead_count, "organisms have died") if dead_count == len(organisms): break # for organism in organisms: # print(organism.name, "died at age", organism.died_age) end_time = time.time() print("Done") duration = end_time - start_time print("Ran for %fs" % duration)
class OrganismTests(unittest.TestCase): def setUp(self): self.org = Organism(id=1) def test_organism_init(self): self.assertGreaterEqual(self.org.pos_x, 0) self.assertGreaterEqual(self.org.pos_y, 0) self.assertEqual(self.org.age, 0) self.assertEqual(self.org.distance_from_food, 0) self.assertEqual(self.org.energy, settings.STARTING_ENERGY) self.assertNotEqual(self.org.brain, None) def test_organism_move(self): pos_x = self.org.pos_x pos_y = self.org.pos_y self.org.move(5,5) self.assertEqual(pos_x, self.org.pos_x-5) self.assertEqual(pos_y, self.org.pos_y-5) def test_organism_brain(self): self.assertNotEqual(self.org.brain.process_input([0,0,0,0,0,0,0,0,0]), (0,0)) self.assertNotEqual(self.org.brain.process_input([0,1,0,1,0,1,0,1,0]), (0,0)) self.assertNotEqual(self.org.brain.process_input([1,1,1,1,1,1,1,1,1]), (0,0))
def setUp(self): self.context = {} self.organism = Organism()
def test_organism_can_be_given_name(self): named_organism = Organism(name="Alfred") self.assertEqual(named_organism.name, "Alfred")
def setUp(self): self.mock_organism = Mock(spec=Organism()) self.attribute_gene = self.TestAttributeGene() self.attribute_gene.decorate(self.mock_organism)
def setUp(self): self.mock_organism = Mock(spec=Organism()) self.mock_organism.name = 'mock_organism_name' self.mortality_pseudo = Mortality() self.mortality_pseudo.decorate(self.mock_organism)
def setUp(self): self.org = Organism(id=1)