public void run(IEvent e) { this.boardMachine.fireStateChangedNotification(new InitializingNotify()); LOG.Info("Initializing"); Board board = new Board(); this.boardMachine.setBoard(board); boardMachine.consumeEvent(new BoardInitializedEvent()); }
public void testCannon_1() { char[,] testCase = { {'c','k','c','a','g','a','c','k','c'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','r',' ',' ','r',' ',' ',' ',' '}, {'R',' ','p',' ','p',' ','p',' ','R'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'r',' ','P',' ','P',' ','P',' ','r'}, {' ',' ',' ','C',' ',' ',' ',' ',' '}, {' ',' ',' ','C',' ',' ',' ',' ',' '}, {'C','K','C','C','G','A','C','K','C'} }; Board board = new Board(); board.deserialize(testCase); // 42, 52 Piece rCannon = board.getPieces()[9, 0]; Piece rCannon1 = board.getPieces()[9, 2]; Piece rCannon2 = board.getPieces()[9, 6]; Piece rCannon3 = board.getPieces()[9, 8]; Piece bCannon = board.getPieces()[0, 0]; Piece bCannon1 = board.getPieces()[0, 2]; Piece bCannon2 = board.getPieces()[0, 6]; Piece bCannon3 = board.getPieces()[0, 8]; Assert.AreEqual(2, rCannon.getValidNextPositions().Count); Assert.AreEqual(3, rCannon1.getValidNextPositions().Count); Assert.AreEqual(3, rCannon2.getValidNextPositions().Count); Assert.AreEqual(2, rCannon3.getValidNextPositions().Count); Assert.AreEqual(2, bCannon.getValidNextPositions().Count); Assert.AreEqual(3, bCannon1.getValidNextPositions().Count); Assert.AreEqual(3, bCannon2.getValidNextPositions().Count); Assert.AreEqual(2, bCannon3.getValidNextPositions().Count); Piece endTest = board.getPieces()[9, 3]; Piece endTest1 = board.getPieces()[8, 3]; Piece endTest2 = board.getPieces()[7, 3]; Assert.AreEqual(0, endTest.getValidNextPositions().Count); Assert.AreEqual(9, endTest1.getValidNextPositions().Count); Assert.AreEqual(14, endTest2.getValidNextPositions().Count); }
public void testCannon_0() { char[,] testCase = { {'r','k','m','a','g','a','m','k','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','c',' ',' ','c',' ',' ',' ',' '}, {'p',' ','p',' ','p',' ','p',' ','p'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'P',' ','P',' ','P',' ','P',' ','P'}, {' ',' ',' ',' ','C',' ',' ','C',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'R','K','M','A','G','A','M','K','R'} }; Board board = new Board(); board.deserialize(testCase); // 42, 52 Piece rCannon = board.getPieces()[7, 4]; Piece rCannon1 = board.getPieces()[7, 7]; Piece bCannon = board.getPieces()[2, 1]; Piece bCannon1 = board.getPieces()[2, 4]; Assert.AreEqual(8, rCannon.getValidNextPositions().Count); Assert.AreEqual(10, rCannon1.getValidNextPositions().Count); Assert.AreEqual(10, bCannon.getValidNextPositions().Count); Assert.AreEqual(8, bCannon1.getValidNextPositions().Count); }
public void testRook_0() { char[,] testCase = { {'r','k','m','a','g','a','m','k','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'r',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ','m',' ','R',' ','m',' ',' '}, {' ',' ','M',' ',' ',' ','M',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'R','k','M','A','G','A','M','k','R'} }; Board board = new Board(); board.deserialize(testCase); // 42, 52 Piece rRook = board.getPieces()[4, 4]; Piece bRook = board.getPieces()[2, 0]; Assert.AreEqual(12, rRook.getValidNextPositions().Count); Assert.AreEqual(16, bRook.getValidNextPositions().Count); Piece bRook1 = board.getPieces()[0, 0]; Piece bRook2 = board.getPieces()[0, 8]; Piece rRook1 = board.getPieces()[9, 0]; Piece rRook2 = board.getPieces()[9, 8]; Assert.AreEqual(1, bRook1.getValidNextPositions().Count); Assert.AreEqual(9, bRook2.getValidNextPositions().Count); Assert.AreEqual(8, rRook1.getValidNextPositions().Count); Assert.AreEqual(10, rRook2.getValidNextPositions().Count); }
public void testPawnWhenCrossedOpponentSide_1() { char[,] testCase = { {'r','k','m','a','g','a','m','k','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','P',' ',' ',' ',' ',' '}, {' ',' ',' ','p',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece rPawn = board.getPieces()[4, 3]; Piece bPawn = board.getPieces()[5, 3]; Assert.AreEqual(3, rPawn.getValidNextPositions().Count); Assert.AreEqual(3, bPawn.getValidNextPositions().Count); Assert.True(rPawn.getValidNextPositions().Contains(new Position(4, 2))); Assert.True(rPawn.getValidNextPositions().Contains(new Position(3, 3))); Assert.True(rPawn.getValidNextPositions().Contains(new Position(4, 4))); Assert.True(bPawn.getValidNextPositions().Contains(new Position(5, 2))); Assert.True(bPawn.getValidNextPositions().Contains(new Position(5, 4))); Assert.True(bPawn.getValidNextPositions().Contains(new Position(6, 3))); }
public void testMinister_5() { char[,] testCase = { {' ','k','m','a','g','a','m','k',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'m',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ','m',' ',' ',' ','m',' ',' '}, {' ',' ','M',' ',' ',' ','M',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'M',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','K','M','A','G','A','M','K',' '} }; Board board = new Board(); board.deserialize(testCase); // 42, 52 Piece rMinister = board.getPieces()[5, 2]; Piece bMinister = board.getPieces()[4, 2]; Piece rMinister1 = board.getPieces()[5, 6]; Piece bMinister1 = board.getPieces()[4, 6]; Assert.AreEqual(1, rMinister.getValidNextPositions().Count); Assert.AreEqual(1, bMinister.getValidNextPositions().Count); Assert.AreEqual(2, rMinister1.getValidNextPositions().Count); Assert.AreEqual(2, bMinister1.getValidNextPositions().Count); // 02, 06, 92, 96 rMinister = board.getPieces()[9, 2]; bMinister = board.getPieces()[0, 2]; rMinister1 = board.getPieces()[9, 6]; bMinister1 = board.getPieces()[0, 6]; Assert.AreEqual(1, rMinister.getValidNextPositions().Count); Assert.AreEqual(1, bMinister.getValidNextPositions().Count); Assert.AreEqual(2, rMinister1.getValidNextPositions().Count); Assert.AreEqual(2, bMinister1.getValidNextPositions().Count); }
public void testKnightIntheEdgeNoneBlocker() { char[,] testCase = { {' ',' ',' ',' ','k',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'k',' ',' ',' ',' ',' ',' ',' ','K'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ','K',' ',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece k1 = board.getPieces()[0, 4]; Piece k2 = board.getPieces()[5, 8]; Piece k3 = board.getPieces()[9, 4]; Piece k4 = board.getPieces()[5, 0]; Assert.AreEqual(4, k1.getValidNextPositions().Count); Assert.AreEqual(4, k2.getValidNextPositions().Count); Assert.AreEqual(4, k3.getValidNextPositions().Count); Assert.AreEqual(4, k4.getValidNextPositions().Count); Assert.True(k1.getValidNextPositions().Contains(new Position(1, 6))); Assert.True(k1.getValidNextPositions().Contains(new Position(2, 5))); Assert.True(k1.getValidNextPositions().Contains(new Position(2, 3))); Assert.True(k1.getValidNextPositions().Contains(new Position(1, 2))); Assert.True(k2.getValidNextPositions().Contains(new Position(7, 7))); Assert.True(k2.getValidNextPositions().Contains(new Position(6, 6))); Assert.True(k2.getValidNextPositions().Contains(new Position(4, 6))); Assert.True(k2.getValidNextPositions().Contains(new Position(3, 7))); Assert.True(k3.getValidNextPositions().Contains(new Position(7, 5))); Assert.True(k3.getValidNextPositions().Contains(new Position(8, 6))); Assert.True(k3.getValidNextPositions().Contains(new Position(8, 2))); Assert.True(k3.getValidNextPositions().Contains(new Position(7, 3))); Assert.True(k4.getValidNextPositions().Contains(new Position(3, 1))); Assert.True(k4.getValidNextPositions().Contains(new Position(4, 2))); Assert.True(k4.getValidNextPositions().Contains(new Position(6, 2))); Assert.True(k4.getValidNextPositions().Contains(new Position(7, 1))); }
public void setBoard(Board board) { this.board = board; }
public void testAdvisor_4() { char[,] testCase = { {'r','k','m',' ',' ',' ',' ','C','P'}, {' ',' ',' ','c','a',' ',' ',' ',' '}, {' ',' ',' ',' ','m',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','R','A',' ',' ',' ',' '}, {' ',' ',' ',' ','K',' ',' ','c','p'} }; Board board = new Board(); board.deserialize(testCase); Piece rAdvisor = board.getPieces()[8, 4]; Piece bAdvisor = board.getPieces()[1, 4]; Assert.AreEqual(4, rAdvisor.getValidNextPositions().Count); Assert.AreEqual(4, bAdvisor.getValidNextPositions().Count); Assert.True(rAdvisor.getValidNextPositions().Contains(new Position(9, 3))); Assert.True(rAdvisor.getValidNextPositions().Contains(new Position(7, 3))); Assert.True(rAdvisor.getValidNextPositions().Contains(new Position(9, 5))); Assert.True(rAdvisor.getValidNextPositions().Contains(new Position(7, 5))); Assert.True(bAdvisor.getValidNextPositions().Contains(new Position(0, 3))); Assert.True(bAdvisor.getValidNextPositions().Contains(new Position(0, 5))); Assert.True(bAdvisor.getValidNextPositions().Contains(new Position(2, 5))); Assert.True(bAdvisor.getValidNextPositions().Contains(new Position(2, 3))); }
public void testAdvisor_0() { char[,] testCase = { {'r','k','m',' ',' ',' ',' ','C','P'}, {' ',' ',' ','c','g',' ',' ',' ',' '}, {' ',' ',' ','a','m',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','R','G',' ',' ',' ',' '}, {' ',' ',' ','A','K','A',' ','c','p'} }; Board board = new Board(); board.deserialize(testCase); Piece rAdvisor = board.getPieces()[9, 3]; Piece bAdvisor = board.getPieces()[2, 3]; Assert.AreEqual(0, rAdvisor.getValidNextPositions().Count); Assert.AreEqual(0, bAdvisor.getValidNextPositions().Count); }
public void testMaster_1() { char[,] testCase = { {'r','k','m',' ',' ',' ',' ','C','P'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','g','m',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','R',' ',' ',' ',' ',' '}, {' ',' ',' ','G',' ',' ',' ','c','p'} }; Board board = new Board(); board.deserialize(testCase); Piece rMaster = board.getPieces()[9, 3]; Piece bMaster = board.getPieces()[2, 3]; Assert.AreEqual(1, rMaster.getValidNextPositions().Count); Assert.AreEqual(1, bMaster.getValidNextPositions().Count); Assert.True(rMaster.getValidNextPositions().Contains(new Position(9, 4))); Assert.True(bMaster.getValidNextPositions().Contains(new Position(1, 3))); }
public void testPawnWhenCrossedOpponentSide_31() { char[,] testCase = { {'r','k','m','a','g','a','m','C','P'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ','c','p'} }; Board board = new Board(); board.deserialize(testCase); Piece rPawn = board.getPieces()[0, 8]; Piece bPawn = board.getPieces()[9, 8]; Assert.AreEqual(0, rPawn.getValidNextPositions().Count); Assert.AreEqual(0, bPawn.getValidNextPositions().Count); }
public void testPawnWhenCrossedOpponentSide_21() { char[,] testCase = { {'r','k','m','a','g','a','m','k',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'R',' ',' ',' ',' ',' ',' ',' ',' '}, {'P',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ','r','p'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece rPawn = board.getPieces()[4, 0]; Piece bPawn = board.getPieces()[6, 8]; Assert.AreEqual(1, rPawn.getValidNextPositions().Count); Assert.AreEqual(1, bPawn.getValidNextPositions().Count); Assert.True(rPawn.getValidNextPositions().Contains(new Position(4, 1))); Assert.True(bPawn.getValidNextPositions().Contains(new Position(7, 8))); }
public void testPawnWhenNotCrossedOpponentSide() { List<char[,]> testList = new List<char[,]>(); List<Position> inputPostion = new List<Position>(); List<int> expectNumber = new List<int>(); List<List<Position>> expectPositions = new List<List<Position>>(); testList.Add(new char[,] { {'r','k','m','a','g','a','m','k','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','p',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }); inputPostion.Add(new Position(3, 1)); expectNumber.Add(1); List<Position> expect1 = new List<Position>(); expect1.Add(new Position(4, 1)); expectPositions.Add(expect1); testList.Add(new char[,] { {'r','k','m','a','g','a','m','k','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','p',' ',' ',' ',' ',' ',' ',' '}, {' ','p',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }); inputPostion.Add(new Position(5, 1)); expectNumber.Add(2); List<Position> expect2 = new List<Position>(); expect2.Add(new Position(6, 1)); expect2.Add(new Position(5, 0)); expect2.Add(new Position(5, 2)); expectPositions.Add(expect2); int i = 0; foreach (var arr in testList) { Console.WriteLine("Test case " + i); Board board = new Board(); board.deserialize(arr); int r = inputPostion.ToArray()[i].getRow(); int c = inputPostion.ToArray()[i].getCol(); Piece p = board.getPieces()[r, c]; NUnit.Framework.Assert.AreEqual(expectNumber.ToArray()[i++], p.getValidNextPositions().Count); } }
public void testKnightIntheEdgeWithBlocker() { char[,] testCase = { {' ',' ',' ','P','k','P',' ',' ',' '}, {' ',' ',' ',' ','P',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'R',' ',' ',' ',' ',' ',' ',' ','r'}, {'k','C',' ',' ',' ',' ',' ','c','K'}, {'R',' ',' ',' ',' ',' ',' ',' ','r'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ','p',' ',' ',' ',' '}, {' ',' ',' ','p','K','p',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece k1 = board.getPieces()[0, 4]; Piece k2 = board.getPieces()[5, 8]; Piece k3 = board.getPieces()[9, 4]; Piece k4 = board.getPieces()[5, 0]; Assert.AreEqual(0, k1.getValidNextPositions().Count); Assert.AreEqual(0, k2.getValidNextPositions().Count); Assert.AreEqual(0, k3.getValidNextPositions().Count); Assert.AreEqual(0, k4.getValidNextPositions().Count); }
public void testKnightIntheCornerNoneBlocker1() { char[,] testCase = { {'k',' ','m','a','g','a','m',' ','k'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ','P',' ',' ',' ',' ',' '}, {' ',' ',' ','p',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'K',' ',' ',' ',' ',' ',' ',' ','K'} }; Board board = new Board(); board.deserialize(testCase); Piece k1 = board.getPieces()[0, 0]; Piece k2 = board.getPieces()[0, 8]; Piece k3 = board.getPieces()[9, 0]; Piece k4 = board.getPieces()[9, 8]; Assert.AreEqual(2, k1.getValidNextPositions().Count); Assert.AreEqual(2, k2.getValidNextPositions().Count); Assert.AreEqual(2, k3.getValidNextPositions().Count); Assert.AreEqual(2, k4.getValidNextPositions().Count); Assert.True(k1.getValidNextPositions().Contains(new Position(1, 2))); Assert.True(k1.getValidNextPositions().Contains(new Position(2, 1))); Assert.True(k2.getValidNextPositions().Contains(new Position(2, 7))); Assert.True(k2.getValidNextPositions().Contains(new Position(1, 6))); Assert.True(k3.getValidNextPositions().Contains(new Position(7, 1))); Assert.True(k3.getValidNextPositions().Contains(new Position(8, 2))); Assert.True(k4.getValidNextPositions().Contains(new Position(8, 6))); Assert.True(k4.getValidNextPositions().Contains(new Position(7, 7))); }
public void testKnightIntheCornerNoneBlocker2() { char[,] testCase = { {' ',' ','m','a','g','a','m',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ','k',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ','K',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece bk = board.getPieces()[4, 4]; Piece rk = board.getPieces()[6, 4]; Assert.AreEqual(8, bk.getValidNextPositions().Count); Assert.AreEqual(8, rk.getValidNextPositions().Count); Assert.True(bk.getValidNextPositions().Contains(new Position(2, 3))); Assert.True(bk.getValidNextPositions().Contains(new Position(2, 5))); Assert.True(bk.getValidNextPositions().Contains(new Position(3, 6))); Assert.True(bk.getValidNextPositions().Contains(new Position(5, 6))); Assert.True(bk.getValidNextPositions().Contains(new Position(6, 3))); Assert.True(bk.getValidNextPositions().Contains(new Position(6, 5))); Assert.True(bk.getValidNextPositions().Contains(new Position(3, 2))); Assert.True(bk.getValidNextPositions().Contains(new Position(5, 2))); Assert.True(rk.getValidNextPositions().Contains(new Position(4, 3))); Assert.True(rk.getValidNextPositions().Contains(new Position(4, 5))); Assert.True(rk.getValidNextPositions().Contains(new Position(5, 6))); Assert.True(rk.getValidNextPositions().Contains(new Position(7, 6))); Assert.True(rk.getValidNextPositions().Contains(new Position(8, 3))); Assert.True(rk.getValidNextPositions().Contains(new Position(8, 5))); Assert.True(rk.getValidNextPositions().Contains(new Position(5, 2))); Assert.True(rk.getValidNextPositions().Contains(new Position(7, 2))); }
public void testMinister_0() { char[,] testCase = { {' ','k',' ','a','g','a',' ','k',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'m',' ',' ',' ','m',' ',' ',' ','m'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {'M',' ',' ',' ','M',' ',' ',' ','M'}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','K',' ','A','G','A',' ','K',' '} }; Board board = new Board(); board.deserialize(testCase); // 20, 70 Piece rMinister = board.getPieces()[7, 0]; Piece bMinister = board.getPieces()[2, 0]; Piece rMinister1 = board.getPieces()[7, 8]; Piece bMinister1 = board.getPieces()[2, 8]; Assert.AreEqual(2, rMinister.getValidNextPositions().Count); Assert.AreEqual(2, bMinister.getValidNextPositions().Count); Assert.AreEqual(2, rMinister1.getValidNextPositions().Count); Assert.AreEqual(2, bMinister1.getValidNextPositions().Count); Assert.True(rMinister.getValidNextPositions().Contains(new Position(5, 2))); Assert.True(rMinister.getValidNextPositions().Contains(new Position(9, 2))); Assert.True(bMinister.getValidNextPositions().Contains(new Position(0, 2))); Assert.True(bMinister.getValidNextPositions().Contains(new Position(4, 2))); Assert.True(rMinister1.getValidNextPositions().Contains(new Position(5, 6))); Assert.True(rMinister1.getValidNextPositions().Contains(new Position(9, 6))); Assert.True(bMinister1.getValidNextPositions().Contains(new Position(0, 6))); Assert.True(bMinister1.getValidNextPositions().Contains(new Position(4, 6))); // 24, 74 rMinister = board.getPieces()[7, 4]; bMinister = board.getPieces()[2, 4]; Assert.AreEqual(4, rMinister.getValidNextPositions().Count); Assert.AreEqual(4, bMinister.getValidNextPositions().Count); }
public void testMinister_4() { char[,] testCase = { {' ','k',' ','a','g','a',' ','k',' '}, {' ','r',' ','r',' ','r',' ','r',' '}, {'m',' ',' ',' ','m',' ',' ',' ','m'}, {' ','r',' ','r',' ','r',' ','r',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ','r',' ','r',' ','r',' ','r',' '}, {'M',' ',' ',' ','M',' ',' ',' ','M'}, {' ','r',' ','r',' ','r',' ','r',' '}, {' ','K',' ','A','G','A',' ','K',' '} }; Board board = new Board(); board.deserialize(testCase); // 20, 70 Piece rMinister = board.getPieces()[7, 0]; Piece bMinister = board.getPieces()[2, 0]; Piece rMinister1 = board.getPieces()[7, 8]; Piece bMinister1 = board.getPieces()[2, 8]; Assert.AreEqual(0, rMinister.getValidNextPositions().Count); Assert.AreEqual(0, bMinister.getValidNextPositions().Count); Assert.AreEqual(0, rMinister1.getValidNextPositions().Count); Assert.AreEqual(0, bMinister1.getValidNextPositions().Count); // 24, 74 rMinister = board.getPieces()[7, 4]; bMinister = board.getPieces()[2, 4]; Assert.AreEqual(0, rMinister.getValidNextPositions().Count); Assert.AreEqual(0, bMinister.getValidNextPositions().Count); }
public void testKnightIntheCornerWithBlocker4() { char[,] testCase = { {' ',' ','m','a','g','a','m',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ','P',' ',' ',' ',' '}, {' ',' ',' ','P','k','P',' ',' ',' '}, {' ',' ',' ',' ','p',' ',' ',' ',' '}, {' ',' ',' ','p','K','p',' ',' ',' '}, {' ',' ',' ',' ','p',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '}, {' ',' ',' ',' ',' ',' ',' ',' ',' '} }; Board board = new Board(); board.deserialize(testCase); Piece bk = board.getPieces()[4, 4]; Piece rk = board.getPieces()[6, 4]; Assert.AreEqual(0, bk.getValidNextPositions().Count); Assert.AreEqual(0, rk.getValidNextPositions().Count); }