def test_move(self):
        commands_to_test = ['e4', 'e5', 'Qh5', 'Nc6', 'Bc4', 'Nf6']
        expected_results = []
        expected_results.append([[2,3,4,5,6,4,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,0,0,1,0,0,0],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,0,0,0,0,0,0],
                                 [7,7,7,7,7,7,7,7],
                                 [8,9,10,11,12,10,9,8]])
        expected_results.append([[2,3,4,5,6,4,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,0,0,1,0,0,0],
                                 [0,0,0,0,7,0,0,0],
                                 [0,0,0,0,0,0,0,0],
                                 [7,7,7,7,0,7,7,7],
                                 [8,9,10,11,12,10,9,8]])
        expected_results.append([[2,3,4,0,6,4,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,0,0,1,0,0,0],
                                 [0,0,0,0,7,0,0,5],
                                 [0,0,0,0,0,0,0,0],
                                 [7,7,7,7,0,7,7,7],
                                 [8,9,10,11,12,10,9,8]])
        expected_results.append([[2,3,4,0,6,4,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,0,0,1,0,0,10],
                                 [0,0,0,0,7,0,0,5],
                                 [0,0,0,0,0,0,0,0],
                                 [7,7,7,7,0,7,7,7],
                                 [8,9,0,11,12,10,9,8]])
        expected_results.append([[2,3,4,0,6,0,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,4,0,1,0,0,10],
                                 [0,0,0,0,7,0,0,5],
                                 [0,0,0,0,0,0,0,0],
                                 [7,7,7,7,0,7,7,7],
                                 [8,9,0,11,12,10,9,8]])
        expected_results.append([[2,3,4,0,6,0,3,2],
                                 [1,1,1,1,0,1,1,1],
                                 [0,0,0,0,0,0,0,0],
                                 [0,0,4,0,1,0,0,10],
                                 [0,0,0,0,7,0,0,5],
                                 [0,0,0,0,0,9,0,0],
                                 [7,7,7,7,0,7,7,7],
                                 [8,9,0,11,12,10,0,8]])

        # Create chess engine
        engine = ChessEngine()
        engine.set_board(self.initial_board_description)

        # Movement
        for move, result in zip(commands_to_test, expected_results):
            engine.parse(move)
            self.assertEqual(engine.board, expected_results)
    def test_set_board(self):
        expected_result = [[2,3,4,5,6,4,3,2],
                           [1,1,1,1,1,1,1,1],
                           [0,0,0,0,0,0,0,0],
                           [0,0,0,0,0,0,0,0],
                           [0,0,0,0,0,0,0,0],
                           [0,0,0,0,0,0,0,0],
                           [7,7,7,7,7,7,7,7],
                           [8,9,10,11,12,10,9,8]]

        # Create chess engine
        engine = ChessEngine()
        engine.set_board(self.initial_board_description)
        self.assertEqual(engine.board, expected_result)