Ejemplo n.º 1
0
    def test_save_load_options(self):
        m1 = Manager(size=13, mutation_rate=0.013)
        m1.save()
        m1.close()

        m2 = Manager()
        m2.load()
        self.assertEqual(m2.pop_size, m1.pop_size)
        self.assertEqual(m2.mutation_rate, m1.mutation_rate)
        m2.close()
Ejemplo n.º 2
0
    def test_save_load_phenotypes(self):
        m = Manager()
        m.create_from_scratch()
        phenotypes = list(m.pop.phenotypes)
        m.save()
        m.close()

        m2 = Manager()
        m2.load()
        self.maxDiff=None
        self.assertListEqual(m2.pop.phenotypes, phenotypes)
        m2.close()
Ejemplo n.º 3
0
                    #       phenotypes that can be shown and voted for.
                elif event.type == self.MONKEY_TESTING_EVENT:
                    key = random.choice([pygame.K_y, pygame.K_n])
                    try:
                        pygame.event.post(pygame.event.Event(pygame.KEYDOWN, {'key': key}))
                    except pygame.error as e:
                        logger.error("Monkey testing error: %s", e)

            pygame.time.wait(20)  # let the processor chill for a bit

    def show_phenotype_image(self, ph):
        logger.debug("Showing phenotype %s.", ph)
        blitdata = rationalSizer(pygame.image.load(self.renderer.get_image_path(ph)),
                                 self.resolution)
        self.main_surface = tran_none(self.main_surface, blitdata)

    def show_next(self):
        ph = self.manager.get_next_phenotype(self.renderer.check_image_available)
        self.show_phenotype_image(ph)

if __name__ == '__main__':
    manager = Manager(size=5, min_votes=5, directory=os.getcwd(), vote_history=VoteHistoryManager())
    try:
        manager.load()
    except IOError:
        manager.create_from_scratch()
    renderer = ImageRenderer(os.path.join(os.getcwd(), "images"))

    interface = Interface(manager, renderer)
    interface.run(monkey_testing=MONKEY_TESTING)