public void SetBlockTest() { int[,] setBlockTestPuzzle = { { 1, 2, 0, 4 }, { 3, 4, 0, 2 }, { 2, 3, 0, 1 }, { 4, 1, 0, 3 } }; Sudoku sudoku = new Sudoku(setBlockTestPuzzle); sudoku.SetBlock(0, 2, 3); Assert.AreEqual(sudoku.AvailableValuesInRow(0).Count, 0); Assert.AreEqual(sudoku.AvailableValuesInColumn(2).Count, 3); Assert.AreEqual(sudoku.AvailableValuesInGrid(1).Count, 1); sudoku.SetBlock(1, 2, 1); Assert.AreEqual(sudoku.AvailableValuesInRow(1).Count, 0); Assert.AreEqual(sudoku.AvailableValuesInColumn(2).Count, 2); Assert.AreEqual(sudoku.AvailableValuesInGrid(1).Count, 0); sudoku.SetBlock(2, 2, 4); Assert.AreEqual(sudoku.AvailableValuesInRow(2).Count, 0); Assert.AreEqual(sudoku.AvailableValuesInColumn(2).Count, 0); Assert.AreEqual(sudoku.AvailableValuesInGrid(3).Count, 0); Assert.IsTrue(sudoku.Solved); }