public function testAddCitizen()
 {
     $citizens = $this->getCitizens();
     $population = new \ChillGeneticAlgorithm\Population($citizens);
     $newCitizen = new DummyCitizen();
     $this->assertNull($population->getCitizenByUniqueIdentifier($newCitizen->getUniqueIdentifier()));
     $population->addCitizen($newCitizen);
     $this->assertEquals($newCitizen, $population->getCitizenByUniqueIdentifier($newCitizen->getUniqueIdentifier()));
 }
 public function testTwoCitizensWithSamePropertiesHaveDifferentUniqueIdentifiers()
 {
     $favoriteFood = 'tacos';
     $romeo = new DummyCitizen();
     $romeo->favoriteFood = $favoriteFood;
     $juliet = new DummyCitizen();
     $juliet->favoriteFood = $favoriteFood;
     $this->assertNotEquals($romeo->getUniqueIdentifier(), $juliet->getUniqueIdentifier());
 }
 public function testWorstPerformerUniqueIdentifier()
 {
     $worstPerformersIdentifiers = $this->scoreManager->getWorstPerformersUniqueIdentifiers(1);
     $this->assertEquals($this->lowestScoreCitizen->getUniqueIdentifier(), $worstPerformersIdentifiers[0]);
 }