Exemplo n.º 1
0
class TestGameStateMainMenu(unittest.TestCase):
    def setUp(self):
        self.manager = GameStateManager()
        self.manager.state = "MainMenu"

    def test_handle_events_exits(self):
        events = [pygame.event.Event(pygame.locals.QUIT)]
        res = self.manager.handle_events(events)
        self.assertEqual(res, False)  # Game doesn't exit from main menu
Exemplo n.º 2
0
class TestGameStateGame(unittest.TestCase):
    def setUp(self):
        pygame.init()
        self.manager = GameStateManager()
        self.manager.state = "Game"

    def test_get_rendered_screen_surface(self):
        screen = self.manager.get_rendered_screen()
        self.assertTrue(isinstance(screen, pygame.Surface))  # Not valid pygame.Surface returned

    def test_get_rendered_screen_correct_size(self):
        screen = self.manager.get_rendered_screen((500, 500))
        self.assertEqual(screen.get_size(), (500, 500))  # Returned image should be of correct size

    def test_handle_events_changes_state(self):
        events = [pygame.event.Event(pygame.locals.QUIT)]
        res = self.manager.handle_events(events)
        self.assertEqual(res, True, "Game exit from game state")
        self.assertEqual(self.manager.state, "InGameMenu")  # Game doesn't exit to ingame menu