def test_board_finished(self): board = Board.from_list(BoardTests.test_board_1) for i in range(4): self.assertTrue(board.is_valid(i)) board = Board.from_list(BoardTests.filled_board) for i in range(4): self.assertFalse(board.is_valid(i)) board = Board.from_list(BoardTests.bad_down) self.assertTrue(board.is_valid(0)) #left self.assertTrue(board.is_valid(3)) #down self.assertFalse(board.is_valid(1)) #right self.assertFalse(board.is_valid(2)) #up
def test_board_moves(self): for base, answer, move in BoardTests.move_tests: board = Board.from_list(base) board.do_move(move) self.assertEqual( board.unroll, answer, 'Failed to do move {}'.format(move) )