public void RegisterConsumer_QueueNameNullInput_Success()
        {
            //Arrange
            string exchange   = nameof(exchange);
            string routingKey = nameof(routingKey);
            var    connection = new RabbitMQConnection(exchange, _connectionMock.Object);
            var    consumer   = connection.CreateConsumer(routingKey);

            //Act
            consumer.RegisterConsumer((s, e) => { });

            //Assert
            _connectionMock.Verify(_createModelExpression);
            _modelMock.Verify(_exchangeDeclareExpression);
            _modelMock.Verify(_queueDeclareExpression);
            _modelMock.Verify(_basicConsumeExpression);
        }
        public void RegisterConsumer_MessageHandlerNullInput_ArgumentNullException()
        {
            //Arrange
            string            exchange          = nameof(exchange);
            string            routingKey        = nameof(routingKey);
            var               connection        = new RabbitMQConnection(exchange, _connectionMock.Object);
            var               consumer          = connection.CreateConsumer(routingKey);
            OnMessageReceived onMessageReceived = null;

            //Act
            var action = new Action(() => consumer.RegisterConsumer(onMessageReceived));

            //Assert
            Assert.Throws <ArgumentNullException>(nameof(onMessageReceived), action);
            _connectionMock.Verify(_createModelExpression);
            _modelMock.Verify(_exchangeDeclareExpression);
        }