Skip to content

Commit f9f8ea3

Browse files
author
khalidx3
committed
Add SudokuSolverTt test file
1 parent 5d65233 commit f9f8ea3

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package test.java.com.thealgorithms.backtracking;
2+
3+
import org.junit.jupiter.api.Test;
4+
import static org.junit.jupiter.api.Assertions.*;
5+
6+
public class SudokuSolverTest {
7+
8+
@Test
9+
public void testSudokuSolverSolvesValidBoard() {
10+
int[][] sudoku = {
11+
{ 3, 0, 6, 5, 0, 8, 4, 0, 0 },
12+
{ 5, 2, 0, 0, 0, 0, 0, 0, 0 },
13+
{ 0, 8, 7, 0, 0, 0, 0, 3, 1 },
14+
{ 0, 0, 3, 0, 1, 0, 0, 8, 0 },
15+
{ 9, 0, 0, 8, 6, 3, 0, 0, 5 },
16+
{ 0, 5, 0, 0, 9, 0, 6, 0, 0 },
17+
{ 1, 3, 0, 0, 0, 0, 2, 5, 0 },
18+
{ 0, 0, 0, 0, 0, 0, 0, 7, 4 },
19+
{ 0, 0, 5, 2, 0, 6, 3, 0, 0 }
20+
};
21+
22+
boolean solved = SudokuSolver.sudokuSolver(sudoku, 0, 0);
23+
assertTrue(solved, "SudokuSolver should solve a valid board");
24+
}
25+
26+
@Test
27+
public void testSudokuSolverRejectsInvalidBoard() {
28+
int[][] sudoku = new int[9][9];
29+
sudoku[0][0] = 5;
30+
sudoku[0][1] = 5; // invalid duplicate in row
31+
32+
boolean solved = SudokuSolver.sudokuSolver(sudoku, 0, 0);
33+
assertFalse(solved, "SudokuSolver should not solve an invalid board");
34+
}
35+
}

0 commit comments

Comments
 (0)