def test_save_and_load(self): self.prepare_test() game = Game() save('a', game) game.new_rang(2) save('b', game) game.hot_seat = True save('c', game) game.turn.another_turn() save('d', game) new_game = Game() load(new_game, 3) assert new_game.hot_seat assert new_game.rang == 2 assert new_game.turn.color == Color.Blue load(new_game, 2) assert new_game.turn.color == Color.Red load(new_game, 1) assert not new_game.hot_seat load(new_game, 0) assert new_game.rang == 11
def test_undo_history(self): game = Game() game.hot_seat = True game.new_rang(2) game.update_game(389, 243) game.update_game(331, 344) assert (game.undo_history == [((0, 0), Color.Red), ((-1, 2), Color.Blue)]) game.undo() assert (game.undo_history == [((0, 0), Color.Red)]) assert (game.redo_history == [((-1, 2), Color.Blue)]) game.undo() assert (game.undo_history == []) assert (game.redo_history == [((-1, 2), Color.Blue), ((0, 0), Color.Red)]) game.undo() assert (game.undo_history == []) assert (game.redo_history == [((-1, 2), Color.Blue), ((0, 0), Color.Red)]) game.update_game(356, 324) assert (game.redo_history == [])
def test_simple_update(self): game = Game() game.hot_seat = True game.update_game(235, 325) assert (game.hex_dictionary == { (0, 0): Color.White, (-1, 2): Color.White, (1, 2): Color.White, (-2, 4): Color.White, (0, 4): Color.White, (2, 4): Color.White, (-3, 6): Color.White, (-1, 6): Color.White, (1, 6): Color.White, (3, 6): Color.White, (-4, 8): Color.White, (-2, 8): Color.White, (0, 8): Color.White, (2, 8): Color.White, (4, 8): Color.White, (-5, 10): Color.White, (-3, 10): Color.White, (-1, 10): Color.White, (1, 10): Color.White, (3, 10): Color.White, (5, 10): Color.White, (-6, 12): Color.White, (-4, 12): Color.White, (-2, 12): Color.White, (0, 12): Color.White, (2, 12): Color.White, (4, 12): Color.White, (6, 12): Color.White, (-7, 14): Color.White, (-5, 14): Color.White, (-3, 14): Color.White, (-1, 14): Color.White, (1, 14): Color.White, (3, 14): Color.White, (5, 14): Color.White, (7, 14): Color.White, (-8, 16): Color.White, (-6, 16): Color.White, (-4, 16): Color.White, (-2, 16): Color.White, (0, 16): Color.White, (2, 16): Color.White, (4, 16): Color.White, (6, 16): Color.White, (8, 16): Color.White, (-9, 18): Color.White, (-7, 18): Color.White, (-5, 18): Color.White, (-3, 18): Color.White, (-1, 18): Color.White, (1, 18): Color.White, (3, 18): Color.White, (5, 18): Color.White, (7, 18): Color.White, (9, 18): Color.White, (-10, 20): Color.Red, (-8, 20): Color.White, (-6, 20): Color.White, (-4, 20): Color.White, (-2, 20): Color.White, (0, 20): Color.White, (2, 20): Color.White, (4, 20): Color.White, (6, 20): Color.White, (8, 20): Color.White, (10, 20): Color.White, (0, 40): Color.White, (-1, 38): Color.White, (1, 38): Color.White, (-2, 36): Color.White, (0, 36): Color.White, (2, 36): Color.White, (-3, 34): Color.White, (-1, 34): Color.White, (1, 34): Color.White, (3, 34): Color.White, (-4, 32): Color.White, (-2, 32): Color.White, (0, 32): Color.White, (2, 32): Color.White, (4, 32): Color.White, (-5, 30): Color.White, (-3, 30): Color.White, (-1, 30): Color.White, (1, 30): Color.White, (3, 30): Color.White, (5, 30): Color.White, (-6, 28): Color.White, (-4, 28): Color.White, (-2, 28): Color.White, (0, 28): Color.White, (2, 28): Color.White, (4, 28): Color.White, (6, 28): Color.White, (-7, 26): Color.White, (-5, 26): Color.White, (-3, 26): Color.White, (-1, 26): Color.White, (1, 26): Color.White, (3, 26): Color.White, (5, 26): Color.White, (7, 26): Color.White, (-8, 24): Color.White, (-6, 24): Color.White, (-4, 24): Color.White, (-2, 24): Color.White, (0, 24): Color.White, (2, 24): Color.White, (4, 24): Color.White, (6, 24): Color.White, (8, 24): Color.White, (-9, 22): Color.White, (-7, 22): Color.White, (-5, 22): Color.White, (-3, 22): Color.White, (-1, 22): Color.White, (1, 22): Color.White, (3, 22): Color.White, (5, 22): Color.White, (7, 22): Color.White, (9, 22): Color.White })