コード例 #1
0
 def test_from_json(self):
     players_json = [
         {
             'color': "red",
             'score': 0,
             'places': []
         },
         {
             'color': "black",
             'score': 123,
             'places': [[2, 3]]
         },
         {
             'color': "white",
             'score': 321,
             'places': [[0, 0], [4, 5]]
         },
         {
             'color': "brown",
             'score': 7,
             'places': [[0, 1], [321, 123]]
         },
     ]
     board_json = [
         [1,     2],
         [4,     0,      0,      5],
         [1,     1,      0,      1]
     ]
     state_json = {'players': players_json, 'board': board_json}
     players = [PlayerData.from_json(player) for player in players_json]
     board = Board.from_json(board_json)
     self.assertEqual(State(players, board), State.from_json(state_json))
コード例 #2
0
    def from_json(value):
        """
        Class method to create a State from a JSON value.

        JSON value -> State
        """
        players = [PlayerData.from_json(player) for player in value['players']]
        board = Board.from_json(value['board'])
        return State(players, board)
コード例 #3
0
 def test_create_board_json(self):
     tiles = [
         [1,     2,      3,      0],
         [4,     0,      0,      5],
         [1,     1,      0,      1]
     ]
     board = Board(3, 4)
     board.create_board_from_json(tiles)
     for r in range(0, len(tiles)):
         for c in range(0, len(tiles[r])):
             self.assertEqual(board.tiles[c][r].fish, tiles[r][c])
     self.assertEqual(board, Board.from_json(tiles))
コード例 #4
0
 def test_create_board_json_short_row(self):
     tiles = [
         [1,     2],
         [4,     0,      0,      5],
         [1,     1,      0,      1]
     ]
     board = Board(3, 4)
     board.create_board_from_json(tiles)
     self.assertEqual(board.tiles[2][0].fish, 0)
     self.assertEqual(board.tiles[3][0].fish, 0)
     self.assertFalse(board.tiles[2][0].is_active)
     self.assertFalse(board.tiles[3][0].is_active)
     self.assertEqual(board, Board.from_json(tiles))