def test_kill_state_kills_thread(self):
     state = GameState(self.game, None, self.gamethread)
     
     self.game.set_game_over(True)
     
     state.kill()
     
     self.assertTrue(self.gamethread.gotshutdown)
     self.assertTrue(self.gamethread.gotjoined)
 def test_use_eventhandler_and_start_thread_first_time_processing_then_draw_screen(self):
     eventhandler = MockEventHandler(self.game)
     display = MockDisplay(self.game)
     state = GameState(eventhandler, display, self.gamethread)
     
     state.process(MockEvent(), {})
     state.display(None)
     
     self.assertTrue(self.gamethread.started)
     self.assertTrue(eventhandler.processed)
     self.assertTrue(display.displayed)