コード例 #1
0
        public void StartMessageConsumer_WhenCalledAfterStart_CallsLoggerTrace()
        {
            var dateTimeProvider     = new Mock <IDateTimeProvider>();
            var logger               = new Mock <ILogger>();
            var configurationManager = new Mock <IConfigurationManager>();

            configurationManager.Setup(x => x.Get <string>("QueueUri")).Returns("amqp://*****:*****@localhost:5672");

            var model      = new Mock <IModel>();
            var connection = new Mock <IConnection>();

            connection.Setup(x => x.CreateModel()).Returns(model.Object);
            var connectionManager = new Mock <IRabbitMqConnectionManager>();

            connectionManager.Setup(x => x.Connection).Returns(connection.Object);

            var rabbitMqWrapper = new RabbitMqWrapper(dateTimeProvider.Object, logger.Object, configurationManager.Object, connectionManager.Object, _metrics);

            rabbitMqWrapper.Start();
            rabbitMqWrapper.StartMessageConsumer(new Mock <AsyncEventHandler <BasicDeliverEventArgs> >().Object);

            logger.Verify(x => x.Trace(It.Is <string>(s => s == "RabbitMqWrapper.StartMessageConsumer"),
                                       It.Is <LogItem>(li => li.Key == "Event" && li.Value() == "Message handler subscribed to queue"),
                                       It.Is <LogItem>(li => li.Key == "QueueName"),
                                       It.Is <LogItem>(li => li.Key == "ConsumerTag"),
                                       It.Is <LogItem>(li => li.Key == "HandlerMethod" && li.Value() == "Invoke")), Times.Once);
        }
コード例 #2
0
        public void StartMessageConsumer_WhenCalledWithoutStart_RaisesException()
        {
            var dateTimeProvider     = new Mock <IDateTimeProvider>();
            var logger               = new Mock <ILogger>();
            var configurationManager = new Mock <IConfigurationManager>();

            configurationManager.Setup(x => x.Get <string>("QueueUri")).Returns("amqp://*****:*****@localhost:5672");

            var model      = new Mock <IModel>();
            var connection = new Mock <IConnection>();

            connection.Setup(x => x.CreateModel()).Returns(model.Object);
            var connectionManager = new Mock <IRabbitMqConnectionManager>();

            connectionManager.Setup(x => x.Connection).Returns(connection.Object);

            var rabbitMqWrapper = new RabbitMqWrapper(dateTimeProvider.Object, logger.Object, configurationManager.Object, connectionManager.Object, _metrics);

            rabbitMqWrapper.StartMessageConsumer(new Mock <AsyncEventHandler <BasicDeliverEventArgs> >().Object);
        }