public void HandleKnowledgeExchangeRequestFromMyLeader() { InitGameMaster(); var Player = GetPlayer("testGUID-0004", 10, TeamColour.blue, ActionType.PickUpPiece); Player.SetLocation(2, 2); Player.myTeam.Add(new GameArea.GameObjects.Player(5, TeamColour.blue, PlayerRole.leader)); RegisterPlayer(Player, Player.GUID); Player.GetBoard.GetTaskField(2, 7).Player = new GameArea.GameObjects.Player(50, TeamColour.red, PlayerRole.member); Player.GetBoard.GetGoalField(2, 0).Player = new GameArea.GameObjects.Player(60, TeamColour.red, PlayerRole.leader); Player.GetBoard.GetTaskField(3, 5).Piece = new GameArea.GameObjects.Piece(150, DateTime.Now, PieceType.unknown); KnowledgeExchangeRequestAgent request = new KnowledgeExchangeRequestAgent(10, 5); var responseArray = request.Process(Player.Controller); var responseData = PlayerReader.GetObjectFromXML(responseArray[0]) as DataAgent; Assert.AreEqual(5ul, responseData.PlayerId); Assert.AreEqual(10ul, responseData.Goals.Where(f => f.X == 2 && f.Y == 2).FirstOrDefault().Player.ID); Assert.AreEqual(10, responseData.Goals.Where(f => f.X == 2 && f.Y == 2).FirstOrDefault().PlayerId); Assert.AreEqual(50ul, responseData.Tasks.Where(f => f.X == 2 && f.Y == 7).FirstOrDefault().Player.ID); Assert.AreEqual(50, responseData.Tasks.Where(f => f.X == 2 && f.Y == 7).FirstOrDefault().PlayerId); Assert.AreEqual(PlayerRole.member, responseData.Tasks.Where(f => f.X == 2 && f.Y == 7).FirstOrDefault().Player.Role); Assert.AreEqual(60ul, responseData.Goals.Where(f => f.X == 2 && f.Y == 0).FirstOrDefault().Player.ID); Assert.AreEqual(60, responseData.Goals.Where(f => f.X == 2 && f.Y == 0).FirstOrDefault().PlayerId); Assert.AreEqual(150ul, responseData.Tasks.Where(f => f.X == 3 && f.Y == 5).FirstOrDefault().Piece.ID); }
public void HandleKnowledgeExchangeRequestFromOtherPlayer() { InitGameMaster(); var Player = GetPlayer("testGUID-0004", 10, TeamColour.blue, ActionType.PickUpPiece); Player.SetLocation(2, 2); Player.otherTeam.Add(new GameArea.GameObjects.Player(5, TeamColour.red, PlayerRole.member)); RegisterPlayer(Player, Player.GUID); Player.GetBoard.GetTaskField(2, 7).Player = new GameArea.GameObjects.Player(50, TeamColour.red, PlayerRole.member); Player.GetBoard.GetGoalField(2, 0).Player = new GameArea.GameObjects.Player(60, TeamColour.red, PlayerRole.leader); Player.GetBoard.GetTaskField(3, 5).Piece = new GameArea.GameObjects.Piece(150, DateTime.Now, PieceType.unknown); KnowledgeExchangeRequestAgent request = new KnowledgeExchangeRequestAgent(10, 5); var responseArray = request.Process(Player.Controller); var responseData = PlayerReader.GetObjectFromXML(responseArray[0]) as DataAgent; Assert.IsNull(responseData); Assert.AreEqual(1, Player.OtherPlayerKnowledgeExchangeQueue.Count); Assert.AreEqual(5ul, Player.OtherPlayerKnowledgeExchangeQueue[0].SenderPlayerId); }
public void AddMyPlayerExhangeKnowledgeRequest(KnowledgeExchangeRequestAgent msg) { MyPlayerKnowledgeExchangeQueue.RemoveAll(r => r.SenderPlayerId == msg.SenderPlayerId); // usun stare rzadanie MyPlayerKnowledgeExchangeQueue.Add(msg); // zapisz najnowsze rzadanie }