public void SudokuSolver_SolveRandomEasyGame() { // Arrange var game = SudokuGameFactory.Create(60, 2000); var solver = new SudokuSolver(); // Act var solutions = solver.Solve(game.InitialBoard); // Assert Assert.Single(solutions); Assert.Equal(game.Solution, solutions.First()); Assert.Equal(60, game.GivensCount); }
static void Main(string[] args) { SudokuEngine.factory.SudokuGameFactory factory = new SudokuGameFactory(); SudokuGame game = factory.getGameByCSV(@"C:\sudoku\CSVGame.csv"); //if (!game.isSolved()) //{ SudokuGame gameToSolve = game.DeepCloneWithSerialization(); SudokuGame solvedGame = SudokuEngine.SudokuSolver.solve(gameToSolve, SudokuAlgorithmFactory.LogicalBasedAlgo); solvedGame = SudokuEngine.SudokuSolver.solve(solvedGame, SudokuAlgorithmFactory.BruteForceAlgo); //solvedGame.isValid(); //} //factory.saveGameSerialized(solvedGame, @"C:\sudoku\propvaSolvedGame.xml"); factory.saveGameToCSV(solvedGame, @"C:\sudoku\CSVResolvedGame.csv"); Console.WriteLine("solved:{0}", solvedGame.isSolved() && solvedGame.isValid()); Console.ReadKey(); }