public void Should_be_able_to_publish_to_an_exchange() { var exchange = managementClient.GetExchanges().SingleOrDefault(x => x.Name == testExchange); if (exchange == null) { throw new ApplicationException( string.Format("Test exchange '{0}' hasn't been created", testExchange)); } var publishInfo = new PublishInfo(testQueue, "Hello World"); var result = managementClient.Publish(exchange, publishInfo); // the testExchange isn't bound to a queue result.Routed.ShouldBeFalse(); }
public void Should_be_able_to_get_messages_from_a_queue() { var queue = managementClient.GetQueues().SingleOrDefault(x => x.Name == testQueue); if (queue == null) { throw new ApplicationException("Test queue has not been created"); } var defaultExchange = new Exchange { Name = "amq.default", Vhost = "/" }; var properties = new Dictionary<string, string> { { "app_id", "management-test"} }; var publishInfo = new PublishInfo(properties, testQueue, "Hello World", "string"); managementClient.Publish(defaultExchange, publishInfo); var criteria = new GetMessagesCriteria(1, false); var messages = managementClient.GetMessagesFromQueue(queue, criteria); foreach (var message in messages) { Console.Out.WriteLine("message.Payload = {0}", message.Payload); foreach (var property in message.Properties) { Console.Out.WriteLine("key: '{0}', value: '{1}'", property.Key, property.Value); } } }