fix : solverTest
All checks were successful
Linux arm64 / Build (push) Successful in 5m5s

This commit is contained in:
Melvyn
2025-01-23 23:47:12 +01:00
parent 483b286bac
commit 187bcea939
2 changed files with 21 additions and 3 deletions

View File

@@ -11,7 +11,7 @@ public class Solver {
/** /**
* Résout le multidoku passé en paramètre si c'est possible. * Résout le multidoku passé en paramètre si c'est possible.
* En testant toutes les possibilités avec un algorithme de backtracking. * 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. * @return boolean, true s'il est résolut ou false s'il ne l'est pas.
*/ */
public static boolean solve(MultiDoku doku) { public static boolean solve(MultiDoku doku) {

View File

@@ -53,15 +53,33 @@ class SolverTest {
assert(dokuResult.isValid()); 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); SudokuPrinter.printRectangleSudoku(dokuToTest.getSubGrid(0), 3, 3);
assert(dokuToTest.isValid()); assert(dokuToTest.isValid());
assert(dokuToTest.equals(dokuResult)); assert(dokuToTest.equals(dokuResult));
MultiDoku dokuToTest2 = SudokuFactory.createBasicEmptySquareSudoku(3);
Sudoku sudokuToTest2 = dokuToTest2.getSubGrid(0);
List<Integer> 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);
} }
} }