public void TopicTest() { Dictionary <Guid, string> topics = new Dictionary <Guid, string>(); Guid expectedId1 = Guid.NewGuid(); string expectedTopic1 = "123"; string expectedTopic2 = "xyy"; Guid expectedId2 = Guid.NewGuid(); topics.Add(expectedId1, expectedTopic1); topics.Add(expectedId2, expectedTopic2); Guid encodedRequestId = Guid.NewGuid(); byte[] encoded = MessageEncoding.EncodeTopics(encodedRequestId, topics); Dictionary <Guid, string> decodedTopics = null; Guid decodedRequestId = Guid.NewGuid(); MessageEncoding.DecodeTopics(encoded, ref decodedRequestId, ref decodedTopics); Assert.AreEqual(encodedRequestId, decodedRequestId); Assert.AreEqual(topics.Count, decodedTopics.Count); Assert.IsTrue(decodedTopics.ContainsKey(expectedId1)); Assert.AreEqual(topics[expectedId1], decodedTopics[expectedId1]); Assert.IsTrue(decodedTopics.ContainsKey(expectedId2)); Assert.AreEqual(topics[expectedId2], decodedTopics[expectedId2]); }
public void Send(byte[] message, MessagingDelegates.ReceiveMessage receiveMessage) { Guid msgId = Guid.NewGuid(); _messages.MoveNext(); Buffer.BlockCopy(message, 0, _messages.Current, 0, message.Length); receiveMessage(MessageEncoding.EncodeTopics(msgId, _getTopics()), 1, 1); }