public void Server_ReceivesObjects_CorrectObjectReceived() { //Arrange MockObjectMessage receivedObject = null; //Act serverObjectTransport.Receive <MockObjectMessage>(o => { receivedObject = o; }).Execute(); Client1ObjectTransport.Send(new MockObjectMessage() { Property1_string = "hello world!", Property2_int = 123, Property3_decimal = 12.3M }).Execute(); Utilities.WaitFor(ref receivedObject); //Assert Assert.AreEqual("hello world!", receivedObject.Property1_string); Assert.AreEqual(123, receivedObject.Property2_int); Assert.AreEqual(12.3M, receivedObject.Property3_decimal); }
public void Send_TwoObjectsStraightAway_BothProcessedSeperatly() { //Arrange Client client = null; client = Client1ObjectTransport.GetConnectedClients().First(); //Act serverObjectTransport.Receive <MockObjectMessage>() .Reply((o) => { return(o); }) .Execute(); var mockObject = new MockObjectMessage() { Property1_string = "Mock Object" }; MockObjectMessage responseObject = null; MockObjectMessage responseObject2 = null; Client1ObjectTransport.Send(mockObject) .Response <MockObjectMessage>((r) => { responseObject = r; }) .Execute(); Client1ObjectTransport.Send(mockObject) .Response <MockObjectMessage>((r) => { responseObject2 = r; }) .Execute(); Utilities.WaitFor(ref responseObject); Utilities.WaitFor(ref responseObject2); //Assert Assert.AreEqual(responseObject.Property1_string, "Mock Object"); Assert.AreEqual(responseObject2.Property1_string, "Mock Object"); }
public void SendAndReplyMessage_ResponseIsCalled() { //Arrange Client client = null; client = Client1ObjectTransport.GetConnectedClients().First(); //Act serverObjectTransport.Receive <MockObjectMessage>() .Reply((o) => { return(o); }) .Execute(); var mockObject = new MockObjectMessage() { Property1_string = "Mock Object" }; MockObjectMessage responseObject = null; Client1ObjectTransport.Send(mockObject) .Response <MockObjectMessage>((r) => { responseObject = r; }) .Execute(); Utilities.WaitFor(ref responseObject); //Assert Assert.AreEqual(responseObject.Property1_string, "Mock Object"); }