Beispiel #1
0
    def test_update_game_calls_send_actions(self):
        cells = [
            Cell(0, 5, 10, Vec2(0, 0), Vec2(1, 1)),
            Cell(1, 5, 10, Vec2(0, 0), Vec2(1, 1)),
            Cell(2, 5, 10, Vec2(0, 0), Vec2(1, 1))
        ]
        player = Player(0, "", 10, True, cells)
        game = Game(0, 0, 0, [player], Resources([], [], []), Map(0, 0), [])

        cells[0].target = Vec2(2, 2)
        cells[0].burst()

        cells[1].split()
        cells[1].trade(3)

        class MockApi:
            def send_actions(self, game_id, actions):
                self.actions = actions

        api = MockApi()

        update_game(api, game, lambda x: None)

        self.assertEqual(len(api.actions), 2)
        self.assertTrue(api.actions[0].target.almost_equals(Vec2(2, 2)))
        self.assertTrue(api.actions[0].burst)

        self.assertTrue(api.actions[1].split)
        self.assertEqual(3, api.actions[1].trade)
Beispiel #2
0
    def test_burst_sets_actions_burst(self):
        cell = Cell(1, 2, 3, Vec2(4, 5), Vec2(6, 7))

        cell.burst()

        actions = cell.actions()
        self.assertTrue(actions.burst)
        self.assertIsNotNone(actions.target)
Beispiel #3
0
    def test_trade_sets_actions_trade(self):
        cell = Cell(1, 2, 3, Vec2(4, 5), Vec2(6, 7))

        cell.trade(42)

        actions = cell.actions()
        self.assertEqual(42, actions.trade)
        self.assertIsNotNone(actions.target)
Beispiel #4
0
    def test_actions_sets_actions_target(self):
        cell = Cell(1, 2, 3, Vec2(4, 5), Vec2(6, 7))
        cell.move(Vec2(6, 7))

        actions = cell.actions()

        self.assertEqual(1, actions.cell_id)
        self.assertTrue(Vec2(6, 7).almost_equals(actions.target))
Beispiel #5
0
    def test_actions_do_nothing(self):
        cell = Cell(1, 2, 3, Vec2(4, 5), Vec2(6, 7))

        actions = cell.actions()

        self.assertIsNone(actions)