From 187bcea939bf09aac47a1f7bdd2a00054685f969 Mon Sep 17 00:00:00 2001 From: Melvyn Date: Thu, 23 Jan 2025 23:47:12 +0100 Subject: [PATCH] fix : solverTest --- app/src/main/java/sudoku/solver/Solver.java | 2 +- .../test/java/sudoku/solver/SolverTest.java | 22 +++++++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/sudoku/solver/Solver.java b/app/src/main/java/sudoku/solver/Solver.java index c541309..e075461 100644 --- a/app/src/main/java/sudoku/solver/Solver.java +++ b/app/src/main/java/sudoku/solver/Solver.java @@ -11,7 +11,7 @@ public class Solver { /** * Résout le multidoku passé en paramètre si c'est possible. * En testant toutes les possibilités avec un algorithme de backtracking. - * @param doku Multidouke, à résoudre + * @param doku Multidoku, à résoudre * @return boolean, true s'il est résolut ou false s'il ne l'est pas. */ public static boolean solve(MultiDoku doku) { diff --git a/app/src/test/java/sudoku/solver/SolverTest.java b/app/src/test/java/sudoku/solver/SolverTest.java index cd974a4..0617e33 100644 --- a/app/src/test/java/sudoku/solver/SolverTest.java +++ b/app/src/test/java/sudoku/solver/SolverTest.java @@ -53,15 +53,33 @@ class SolverTest { assert(dokuResult.isValid()); - boolean isSolvable = Solver.solve(dokuToTest); + Solver.solve(dokuToTest); - System.out.println("\n****************************\nDoku solve"); + System.out.println("\n****************************\nDoku solved"); SudokuPrinter.printRectangleSudoku(dokuToTest.getSubGrid(0), 3, 3); assert(dokuToTest.isValid()); assert(dokuToTest.equals(dokuResult)); + + MultiDoku dokuToTest2 = SudokuFactory.createBasicEmptySquareSudoku(3); + Sudoku sudokuToTest2 = dokuToTest2.getSubGrid(0); + + List immutableCells2 = List.of(ns, ns, 0, ns, ns, 2, 8, ns, 1, + 1, 3, ns, ns, 5, 6, 7, ns, ns, + ns, ns, ns, 8, ns, 7, ns, ns, 6, + 0, ns, 1, ns, ns, ns, ns, ns, ns, + 4, 8, 7, 5, 1, ns, 6, ns, ns, + 6, ns, 3, 2, ns, ns, ns, 8, 0, + ns, ns, 6, ns, ns, 8, ns, 7, 5, + 8, 0, ns, 7, ns, 5, 2, ns, 3, + 5, ns, ns, ns, 3, 1, 0, ns, ns); + sudokuToTest2.setImmutableCellsSymbol(immutableCells2); + + boolean isSolved = Solver.solve(dokuToTest2); + + assert(!isSolved); } } \ No newline at end of file