public void TestBottomLineMoveDownFail() { var chessBoard = new ChessBoard(); chessBoard.AddNew(new Position(3, 0), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(3, 1), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(3, 2), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(3, 3), ChessBoardHandler.RandomLevel()); Assert.AreEqual(chessBoard.Move(Direction.Down), false); }
public void TestRightLineMoveRightFail() { var chessBoard = new ChessBoard(); chessBoard.AddNew(new Position(0, 3), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(1, 3), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(2, 3), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(3, 3), ChessBoardHandler.RandomLevel()); Assert.AreEqual(chessBoard.Move(Direction.Right), false); }
public void TestLeftLineMoveLeftFail() { var chessBoard = new ChessBoard(); chessBoard.AddNew(new Position(0, 0), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(1, 0), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(2, 0), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(3, 0), ChessBoardHandler.RandomLevel()); Assert.AreEqual(chessBoard.Move(Direction.Left), false); }
public void TestToplLineMoveUpFail() { var chessBoard = new ChessBoard(); chessBoard.AddNew(new Position(0, 0), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(0, 1), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(0, 2), ChessBoardHandler.RandomLevel()); chessBoard.AddNew(new Position(0, 3), ChessBoardHandler.RandomLevel()); Assert.AreEqual(chessBoard.Move(Direction.Up), false); }
public void SingleRandomAddTheSamePlaceTest() { var chessBoard = new ChessBoard(); int randomRow = RandomGenerator.Next(4); int randomCol = RandomGenerator.Next(4); var randomPosition = new Position(randomRow, randomCol); chessBoard.AddNew(randomPosition, ChessBoardHandler.RandomLevel()); chessBoard.AddNew(randomPosition, ChessBoardHandler.RandomLevel()); Assert.AreEqual(chessBoard.EmptyCount, 15); }
public void TestLineMoveUpMergeOnce() { for (int col = 0; col < 4; ++col) { var chessBoard = new ChessBoard(); int level = ChessBoardHandler.RandomLevel(); var rows = RandomGenerator.GetDistinctInts(2, 4); chessBoard.AddNew(new Position(rows[0], col), level); chessBoard.AddNew(new Position(rows[1], col), level); Assert.AreEqual(chessBoard.Move(Direction.Up), true); Assert.AreEqual(chessBoard.EmptyCount, 15); } }
public void TestLineMoveRightMergeOnce() { for (int row = 0; row < 4; ++row) { var chessBoard = new ChessBoard(); int level = ChessBoardHandler.RandomLevel(); var cols = RandomGenerator.GetDistinctInts(2, 4); chessBoard.AddNew(new Position(row, cols[0]), level); chessBoard.AddNew(new Position(row, cols[1]), level); Assert.AreEqual(chessBoard.Move(Direction.Right), true); Assert.AreEqual(chessBoard.EmptyCount, 15); } }
public void RandomAddNewSetEmptyTest() { var addEmptyBoard = new ChessBoard(); var emptyPositions = addEmptyBoard.GetEmptyPositions(); int occupyCount = RandomGenerator.Next(emptyPositions.Count); for (int i = 0; i < occupyCount; ++i) { addEmptyBoard.AddNew(emptyPositions[i], ChessBoardHandler.RandomLevel()); addEmptyBoard.SetEmpty(emptyPositions[i]); } var emptyBoard = new ChessBoard(); Assert.AreEqual(addEmptyBoard.EmptyCount, 16); Assert.AreEqual(addEmptyBoard, emptyBoard); }