public void EventCanBeReceived()
        {
            using (var sut = new RabbitBusProvider(BusOptions))
            {
                sut.EnsureConnection();
                var          queue       = GetUniqueQueue();
                var          topic       = GetUniqueTopic();
                const string jsonMessage = "Something";

                EventMessage          passedMessage         = null;
                var                   waitHandle            = new ManualResetEvent(false);
                EventReceivedCallback eventReceivedCallback = (message) =>
                {
                    passedMessage = message;
                    waitHandle.Set();
                };

                sut.BasicTopicBind(queue, topic);
                sut.BasicConsume(queue, eventReceivedCallback);

                SendRabbitEventToExchange(topic, jsonMessage);

                waitHandle.WaitOne(2000).ShouldBeTrue();
                passedMessage.ShouldNotBeNull();
                passedMessage.JsonMessage.ShouldBe(jsonMessage);
            }
        }