def test_rule_one(self): """ # Any live cell with fewer than two live neighbours dies. # --> """ grid = set([(2, 2)]) new_grid = game_of_life.step(grid) self.assertNotIn((2, 2), new_grid)
def test_rule_three(self): """ # Any live cell with more than three live neighbours dies. # # ### --> # # # # """ grid = set([(1, 0), (2, 0), (3, 0), (2, 1), (2, -1)]) new_grid = game_of_life.step(grid) self.assertNotIn((2, 0), new_grid)
def test_rule_two(self): """ # Any live cell with two or three live neighbours remains alive. ## --> ## # ## """ grid = set([(1, 0), (2, 0), (2, -1)]) new_grid = game_of_life.step(grid) for cell in grid: self.assertIn(cell, new_grid)
def test_rule_one(self): """ # Any live cell with fewer than two live neighbours dies. # --> """ grid = set([(2, 2)]) new_grid = game_of_life.step(grid) for cell in grid: self.assertNotIn(cell, new_grid)
def test_rule_four(self): """ # Any dead cell with exactly three live neighbours becomes a live cell. # # --> ### # """ grid = set([(1, 0), (2, 0), (3, 0)]) new_grid = game_of_life.step(grid) self.assertNotIn((1, 0), new_grid) self.assertNotIn((3, 0), new_grid) self.assertIn((2, 0), new_grid) self.assertIn((2, 1), new_grid) self.assertIn((2, -1), new_grid)
def run(state): clock = pygame.time.Clock() running = True while running: layer.fill((0,0,0,)) for cell in state: layer.set_at(cell, (255,255,255)) for event in pygame.event.get(): if event.type == pygame.QUIT: running = False pygame.display.flip() state = game_of_life.step(state) clock.tick(24)
def run(state): clock = pygame.time.Clock() running = True while running: layer.fill(( 0, 0, 0, )) for cell in state: layer.set_at(cell, (255, 255, 255)) for event in pygame.event.get(): if event.type == pygame.QUIT: running = False pygame.display.flip() state = game_of_life.step(state) clock.tick(24)
def run(game_state, width, height, percent): """ Main loop """ clock = pygame.time.Clock() running = True black = (0, 0, 0) white = (255, 255, 255) origin = (0, 0) start = origin end = width, height screen, surface = init_screen(width, height) pygame.font.init() myfont = pygame.font.SysFont('Comic Sans MS', 30) screen_stats = "start: {0}, end: {1}" textsurface = myfont.render(screen_stats.format(0, 0), False, (255, 255, 0)) while running: surface.fill(black) for cell in game_state: surface.set_at(cell, white) for event in pygame.event.get(): if event.type == pygame.KEYDOWN or event.type == pygame.QUIT: running = False if event.type == pygame.MOUSEBUTTONDOWN: start = pygame.mouse.get_pos() if event.type == pygame.MOUSEBUTTONUP: end = pygame.mouse.get_pos() textsurface = myfont.render(screen_stats.format(start, end), False, (255, 255, 0)) game_state = game_state.union( game_of_life.create_cells(start, end, percent)) screen.blit(surface.convert(), origin) screen.blit(textsurface.convert(), origin) pygame.display.flip() game_state = game_of_life.step(game_state) clock.tick(24)
def run(game_state, width, height, percent): """ Main loop """ clock = pygame.time.Clock() running = True black = (0, 0, 0) white = (255, 255, 255) origin = (0, 0) start = origin end = width, height screen, surface = init_screen(width, height) pygame.font.init() myfont = pygame.font.SysFont('Comic Sans MS', 30) screen_stats = "start: {0}, end: {1}" textsurface = myfont.render(screen_stats.format(0, 0), False, (255, 255, 0)) while running: surface.fill(black) for cell in game_state: surface.set_at(cell, white) for event in pygame.event.get(): if event.type == pygame.KEYDOWN or event.type == pygame.QUIT: running = False if event.type == pygame.MOUSEBUTTONDOWN: start = pygame.mouse.get_pos() if event.type == pygame.MOUSEBUTTONUP: end = pygame.mouse.get_pos() textsurface = myfont.render(screen_stats.format(start, end), False, (255, 255, 0)) game_state = game_state.union(game_of_life.create_cells(start, end, percent)) screen.blit(surface.convert(), origin) screen.blit(textsurface.convert(), origin) pygame.display.flip() game_state = game_of_life.step(game_state) clock.tick(24)
def test_glider(before, after): assert equal(step(before), after)
def test_still(filename): cells = load_cells(asset(filename)) assert equal(step(cells), cells)