public void Opens_Connection() { var options = new OptionsWrapper <RabbitMQOptions>(new RabbitMQOptions { HostName = Constants.LocalHost }); var loggerFactory = new LoggerFactory(); var mockServiceFactory = new Mock <IRabbitMQServiceFactory>(); var mockNameResolver = new Mock <INameResolver>(); var config = new RabbitMQExtensionConfigProvider(options, mockNameResolver.Object, mockServiceFactory.Object, loggerFactory, _emptyConfig); var mockService = new Mock <IRabbitMQService>(); mockServiceFactory.Setup(m => m.CreateService(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int>())).Returns(mockService.Object); RabbitMQAttribute attr = new RabbitMQAttribute { ConnectionStringSetting = string.Empty, HostName = Constants.LocalHost, UserName = "******", Password = "******", Port = 5672 }; RabbitMQClientBuilder clientBuilder = new RabbitMQClientBuilder(config, options); var model = clientBuilder.Convert(attr); mockServiceFactory.Verify(m => m.CreateService(It.IsAny <string>(), Constants.LocalHost, "guest", "guest", 5672), Times.Exactly(1)); }
public void TestWhetherConnectionIsPooled() { var options = new OptionsWrapper <RabbitMQOptions>(new RabbitMQOptions { HostName = Constants.LocalHost }); var mockServiceFactory = new Mock <IRabbitMQServiceFactory>(); mockServiceFactory.SetupSequence(m => m.CreateService(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int>())) .Returns(GetRabbitMQService()) .Returns(GetRabbitMQService()); var config = new RabbitMQExtensionConfigProvider(options, new Mock <INameResolver>().Object, mockServiceFactory.Object, new LoggerFactory(), _emptyConfig); RabbitMQAttribute attr = GetTestAttribute(); RabbitMQClientBuilder clientBuilder = new RabbitMQClientBuilder(config, options); var model = clientBuilder.Convert(attr); var model2 = clientBuilder.Convert(attr); Assert.Equal(model, model2); }