public void TestSimpleMove() { var m = GetSimpleRowMoveMatrix(); var ma = new Analyser.Analyser(); CellValue cellValue; Assert.AreEqual(true, Analyser.Analyser.CanMove(m, 8, 0, out cellValue)); Assert.AreEqual(CellValue.Nine, cellValue); Assert.AreEqual(false, Analyser.Analyser.CanMove(m, 7, 0, out cellValue)); Assert.AreEqual(true, Analyser.Analyser.CanMove(m)); m = GetSimpleColumnMoveMatrix(); var c = m.Column(0); Assert.AreEqual(CellValue.Eight, c[7].CellValue); Assert.AreEqual(CellValue.Blank, c[8].CellValue); Assert.AreEqual(true, Analyser.Analyser.CanMove(m, 0, 8, out cellValue)); Assert.AreEqual(CellValue.Nine, cellValue); Assert.AreEqual(false, Analyser.Analyser.CanMove(m, 0, 7, out cellValue)); Assert.AreEqual(true, Analyser.Analyser.CanMove(m)); m = GetSimpleSquareMoveMatrix(); var s = m.Square(0, 0); Assert.AreEqual(true, Analyser.Analyser.CanMove(m, 2, 2, out cellValue)); Assert.AreEqual(CellValue.Nine, cellValue); Assert.AreEqual(true, Analyser.Analyser.CanMove(m)); }
public void TestMediumMatrixMoves() { var ma = new Analyser.Analyser(); var m = GetMediumMoveMatrix(); var moves = Analyser.Analyser.GetAvailableMoves(m); Assert.AreEqual(1, moves.Count); }
public void TestMoves() { var ma = new Analyser.Analyser(); var m = Matrix.Blank; var moves = Analyser.Analyser.GetAvailableMoves(m); Assert.AreEqual(0, moves.Count); m = GetSimpleRowMoveMatrix(); moves = Analyser.Analyser.GetAvailableMoves(m); var moveString = new StringBuilder(); foreach (var move in moves) { moveString.Append(move); } Assert.AreEqual(1, moves.Count); Assert.AreEqual(CellValue.Nine, moves[0].CellValue); Assert.AreEqual(8, moves[0].I); Assert.AreEqual(0, moves[0].J); }