public void BoardLogicRemovePiece() { PieceLogic[] expectedPieces = new PieceLogic[24]; for (int i = 0; i < 12; i++) { PieceLogic p = new PieceLogic(i, "Red"); expectedPieces[i] = p; } for (int i = 11; i < 24; i++) { PieceLogic p = new PieceLogic(i, "Black"); expectedPieces[i] = p; } BoardLogic board = new BoardLogic(expectedPieces); int idToRemove = 1; // test RemovePiece board.RemovePiece(idToRemove); PieceLogic[] actualPieces = board.GetPieces(); for (int i = 0; i < actualPieces.Length; i++) { if (actualPieces[i].GetId() == idToRemove) { int[] actualLocation = actualPieces[i].GetLocation(); int[] expectedLocation = new int[] { -1, -1 }; Assert.AreEqual(actualLocation[0], expectedLocation[0]); } } }
public void BoardLogicGetSet() { PieceLogic[] expectedPieces = new PieceLogic[24]; for (int i = 0; i < 12; i++) { PieceLogic p = new PieceLogic(i, "Red"); expectedPieces[i] = p; } for (int i = 11; i < 24; i++) { PieceLogic p = new PieceLogic(i, "Black"); expectedPieces[i] = p; } BoardLogic board = new BoardLogic(expectedPieces); PieceLogic[] actualPieces = board.GetPieces(); // test GetPieces Assert.AreEqual(expectedPieces, actualPieces); for (int i = 0; i < 12; i++) { PieceLogic p = new PieceLogic(i, "Black"); expectedPieces[i] = p; } for (int i = 11; i < 24; i++) { PieceLogic p = new PieceLogic(i, "Red"); expectedPieces[i] = p; } // test SetPieces board.SetPieces(expectedPieces); actualPieces = board.GetPieces(); Assert.AreEqual(expectedPieces, actualPieces); }
/////////////////////////////////////////////////////////////////// //////////////////////////// Methods ////////////////////////////// /////////////////////////////////////////////////////////////////// /// <summary> /// Queries database every 0.2 seconds. When it is the player's turn, returns true. /// Does not return until then. Never returns false. /// </summary> /* * public bool IsMyTurn() * { * while (true) * { * //Query database for whose turn it is: Nick - how do I get whose turn it is from the database? * HackshTable myTable = this._client.getGame(GetGameId()); * string currPlayerTurn = myTable.get("Turn")[0]; * if (currPlayerTurn == this.GetPlayerColor()) * { * return true; * } * Thread.Sleep(200); * } * } */ /// <summary> /// Finds the piece at the given location /// </summary> public PieceLogic FindPiece(int x, int y) { for (int i = 0; i < _board.GetPieces().Length; i++) { if (_board.GetPieces()[i].GetLocation()[0] == x) { if (_board.GetPieces()[i].GetLocation()[1] == y) { return(_board.GetPieces()[i]); } } } return(null); }