public Agent(AgentConfiguration configuration) { this.Configuration = configuration; _client = new TcpClient(Configuration.CsIp, Configuration.CsPort); NetworkStream stream = _client.GetStream(); this._communicator = new SenderReceiverQueueAdapter(new StreamMessageSenderReceiver(stream, new Parser()), HandleJoinTimeError); }
public void TestConstructorThrowsExceptionIfGameStartedNull() { //given var senderReceiverQueueAdapter = new SenderReceiverQueueAdapter( new StreamMessageSenderReceiver( new EchoStream(), new Parser())); var strategyMock = new Mock <IStrategy>(); AgentInfo agentInfo = new AgentInfo(strategyMock.Object, null); //when _ = new MessageHandler(senderReceiverQueueAdapter, agentInfo); //then //AgentInfoNotValidException thrown }
GetGmAgentConnections() { Stream agentToGmStream = new EchoStream(); Stream gmToAgentStream = new EchoStream(); Stream agentSideStream = new StreamRWJoin(gmToAgentStream, agentToGmStream); Stream gmSideStream = new StreamRWJoin(agentToGmStream, gmToAgentStream); var agentQueueAdapter = new SenderReceiverQueueAdapter( new StreamMessageSenderReceiver( agentSideStream, new Parser())); var gmQueueAdapter = new SenderReceiverQueueAdapter( new StreamMessageSenderReceiver( gmSideStream, new Parser())); return(agentQueueAdapter, gmQueueAdapter); }
public void TestCanTransferMessage() { Stream stream = new EchoStream(); Message <JoinGameRequest> expected = new Message <JoinGameRequest> (new JoinGameRequest { TeamId = "Hello" }); SenderReceiverQueueAdapter adapter = new SenderReceiverQueueAdapter( new StreamMessageSenderReceiver(stream, new Parser())); //when adapter.Send(expected); Message received = adapter.Take(); //then Assert.AreEqual(expected.MessagePayload.TeamId, ((Message <JoinGameRequest>)received).MessagePayload.TeamId); //after adapter.Dispose(); }