def test_recursive_solver_works_for_simples_cases(probe): # GIVEN sudoku = Sudoku(load_sample_unsolved_sudoku(probe)) # WHEN solved_sudoku = recursive_solver(sudoku) # THEN assert solved_sudoku.is_solved == True assert sudoku_is_valid(solved_sudoku.array) == True
def test_recursive_solver_works_for_generated_impossible_cases(probe): # GIVEN sudoku, _ = generate(Difficult.impossible) # WHEN solved_sudoku = recursive_solver(sudoku) # THEN assert solved_sudoku.is_solved == True assert sudoku_is_valid(solved_sudoku.array) == True
def test_naive_solver_works_for_generated_cases(probe): # GIVEN sudoku, _ = generate(Difficult.easy) # WHEN solved_sudoku = naive_solver(sudoku) # THEN assert solved_sudoku.is_solved == True assert sudoku_is_valid(solved_sudoku.array) == True