Example #1
0
 def test_simple_game(self):
     level = load_level("levels/level1.json")
     game_room = GameRoom([level], 2, self._send_func)
     game_room.add_player(1)
     game_room.add_player(2)
     game_room.handle_client_message(1, json.dumps({"action": "start"}))
     for i in xrange(len(level.edges)):
         game_room.handle_client_message(1, json.dumps({"action": "fill", "data": {"edge_id": i}}))
Example #2
0
 def test_lose_level(self):
     level = load_level("levels/level1.json")
     game_room = GameRoom([level], 2, self._send_func, 2, 3)
     game_room.add_player(1)
     game_room.add_player(2)
     game_room.handle_client_message(1, json.dumps({"action": "start"}))
     game_room.handle_client_message(2, json.dumps({"action": "start_level"}))
     game_room.update()
     self.assertTrue(game_room.is_in_level)
     from time import sleep
     sleep(3)
     game_room.update()
Example #3
0
 def test_multiple_levels(self):
     levels = [load_level(fn) for fn in get_level_names()]
     game_room = GameRoom(levels, 2, self._send_func)
     game_room.add_player(1)
     game_room.add_player(2)
     game_room.handle_client_message(1, json.dumps({"action": "start"}))
     for level in levels:
         game_room.handle_client_message(2, json.dumps({"action": "start_level"}))
         for i in xrange(len(level.edges)):
             game_room.handle_client_message(1, json.dumps({"action": "fill", "data": {"edge_id": i}}))
     game_room.handle_client_message(2, json.dumps({"action": "start_level"}))
     self.assertFalse(game_room.is_room_active)
Example #4
0
 def test_disconnect_before_start(self):
     level = load_level("levels/level1.json")
     game_room = GameRoom([level], 2, self._send_func)
     game_room.add_player(1)
     game_room.add_player(2)
     game_room.add_player(3)
     game_room.remove_player(1)
     game_room.add_player(4)
     game_room.handle_client_message(2, json.dumps({"action": "start"}))
     game_room.handle_client_message(2, json.dumps({"action": "start_level"}))
     for i in xrange(len(level.edges)):
         game_room.handle_client_message(4, json.dumps({"action": "fill", "data": {"edge_id": i}}))