public void Messages_with_null_Response_is_published_to_OutMQ() { int msgsReceived = 0; using (var mqServer = CreateMqServer()) { mqServer.RegisterHandler <HelloNull>(m => { Interlocked.Increment(ref msgsReceived); return(null); }); mqServer.Start(); using (var mqClient = mqServer.CreateMessageQueueClient()) { mqClient.Publish(new HelloNull { Name = "Into the Void" }); var msg = mqClient.Get <HelloNull>(QueueNames <HelloNull> .Out, TimeSpan.FromSeconds(5)); Assert.That(msg, Is.Not.Null); HelloNull response = msg.GetBody(); Thread.Sleep(100); Assert.That(response.Name, Is.EqualTo("Into the Void")); Assert.That(msgsReceived, Is.EqualTo(1)); } } }
public void Messages_with_null_Response_is_published_to_ReplyMQ() { int msgsReceived = 0; using (var mqServer = CreateMqServer()) { mqServer.RegisterHandler <HelloNull>(m => { Interlocked.Increment(ref msgsReceived); return(null); }); mqServer.Start(); using (var mqClient = mqServer.CreateMessageQueueClient()) { var replyMq = mqClient.GetTempQueueName(); mqClient.Publish(new Message <HelloNull>(new HelloNull { Name = "Into the Void" }) { ReplyTo = replyMq }); var msg = mqClient.Get <HelloNull>(replyMq); HelloNull response = msg.GetBody(); Thread.Sleep(100); Assert.That(response.Name, Is.EqualTo("Into the Void")); Assert.That(msgsReceived, Is.EqualTo(1)); } } }
public void Messages_notify() { using (var mqServer = CreateMqServer()) { mqServer.Start(); using (var mqClient = mqServer.CreateMessageQueueClient()) { var name = new HelloNull { Name = "Into the Void" }; mqClient.Notify(MqQueueNames <HelloNull> .Topic, new MqMessage <HelloNull> { Body = name }); var msg = mqClient.Get <HelloNull>(MqQueueNames <HelloNull> .Topic, TimeSpan.FromSeconds(5)); Assert.AreEqual(name.Name, msg.GetBody().Name); Thread.Sleep(100); } } }