Example #1
0
        public void TestDeserialise()
        {
            const string sender          = "ftp://127.0.0.1:22/";
            const string recipient       = "ftp://127.0.0.1/";
            const string messageProperty = "Something";
            var          messageCreated  = DateTime.Now;

            const string messageTemplate = @"{{""Sender"":{{""PeerAddress"":""{0}""}},""Recipient"":{{""PeerAddress"":""{1}""}},""Message"":{{""MessageType"":""{2}"",""MessageProperty"":""{3}""}},""MessageCreated"":""{4}""}}";

            var serialiser = new JsonMessageSerialiser(this._messageTypeDictionary);

            var messageContent = string.Format(
                messageTemplate,
                sender,
                recipient,
                MessageExtensions.MessageTypeSignature <DummyMessage>(),
                messageProperty,
                messageCreated.ToString("yyyy-MM-ddTHH:mm:ss.fffffffK"));

            var deserialised = serialiser.Deserialise(messageContent);

            Assert.IsInstanceOfType(deserialised, typeof(Envelope <DummyMessage>));
            Assert.AreEqual(sender, deserialised.Sender.PeerAddress.AbsoluteUri);
            Assert.AreEqual(recipient, deserialised.Recipient.PeerAddress.AbsoluteUri);
            Assert.AreEqual(messageCreated, deserialised.MessageCreated);
            Assert.AreEqual(messageProperty, (deserialised.Message as DummyMessage).MessageProperty);
        }
        public void SerialiseAndDeserialiseMessage()
        {
            var componentUnderTest = new JsonMessageSerialiser();

             var message = new TestMessage();
             var serialisedMessage = componentUnderTest.Serialise(message);
             var deserialisedMessage = componentUnderTest.Deserialise(serialisedMessage, typeof(TestMessage));

             Assert.That(deserialisedMessage, Is.Not.Null);
        }
        public void Throw_ArgumentNullException_Given_Message_Is_Null_When_Deserialising()
        {
            Action x = () => _jsonSerialiser.Deserialise <MyEvent>(null);

            x.Should().ThrowExactly <ArgumentNullException>();
        }