public void TestDecode() { var map = new MessageMap(new KeyValuePair<string, Type>[] { new KeyValuePair<string, Type>("type1", typeof(SampleObject)) }); var message = new Message(); message.SetData("type", "type1"); message.SetData("V1", "ABC"); message.SetData("V2", 5); var obj = map.Decode(message) as SampleObject; Assert.AreEqual("ABC", obj.V1); Assert.AreEqual(5, obj.V2); }
private void CopyMembersToMessage(Message message, object toEncode) { foreach (string fieldNameCrt in GetFieldsOf(toEncode)) { message.SetData(fieldNameCrt, GetFieldValue(toEncode, fieldNameCrt)); } foreach (string propertyNameCrt in GetPropertiesOf(toEncode)) { message.SetData(propertyNameCrt, GetPropertyValue(toEncode, propertyNameCrt)); } }
public Message Encode(object toEncode) { string messageType = FindMessageType(toEncode.GetType()); Message message = new Message(); message.SetData("type", messageType); CopyMembersToMessage(message, toEncode); return message; }
public void MessageHandlerDispatchesByType() { Message message = new Message(); message.SetData("type", "type1"); MessageMap messageMap = new MessageMap(GetType().Assembly, "CometGateway.Server.Gateway.Tests.SampleMessages"); SampleHandler handler = new SampleHandler(messageMap); handler.HandleMessage(message); Assert.AreEqual("SampleMessage1", handler.called); }
public void ConnectStartsConnectionAndCaches() { MockRepository mockRepository = new MockRepository(); var socketConnection = mockRepository.DynamicMock<IHTMLConnection>(); TelnetProtocolTranslator connectMessageHandler = new TelnetProtocolTranslator(socketConnection, null, null); socketConnection.Expect(connection => connection.StartConnect("test.com", 25)); socketConnection.Expect(connection => connection.ServerDisconnected += connectMessageHandler.OnDisconnected); socketConnection.Expect(connection => connection.ConnectionSucceeded += connectMessageHandler.OnConnectSucceeded); socketConnection.Expect(connection => connection.ErrorOccurred += connectMessageHandler.OnErrorOccurred); var message = new Message(); message.SetData("type", "connect"); message.SetData("server", "test.com"); message.SetData("port", 25); message.clientId = "abc"; message.channel = "def"; mockRepository.ReplayAll(); connectMessageHandler.HandleMessage(message); Assert.AreEqual("abc", connectMessageHandler.ClientId); Assert.AreEqual("def", connectMessageHandler.Channel); mockRepository.VerifyAll(); }
public void TextTypedForwardsLine() { MockRepository mockRepository = new MockRepository(); var socketConnection = mockRepository.DynamicMock<IHTMLConnection>(); var connectMessageHandler = new TelnetProtocolTranslator(socketConnection, null, null); socketConnection.Expect(connection => connection.Send("line typed")); var message = new Message(); message.SetData("type", "textEntered"); message.SetData("text", "line typed"); mockRepository.ReplayAll(); connectMessageHandler.HandleMessage(message); mockRepository.VerifyAll(); }