public IMessageSubscription Create( IChannelManagerFactory channelManagerFactory, Type[] messageHandlerTypes) { var listener = new RabbitMQMessageListener(channelManagerFactory, messageHandlerTypes, this.messageHandlerTypesIndexFactory, this.messageHandlerInvokerFactory, this.queueNameConvention, this.messageEncoder, this.messageSerialiser, this.logger, this.configuration); var subscription = new MessageSubscription(this.taskLibrary, listener); return subscription; }
public void SetupBeforeEachTest() { this.channelManagerFactory = A.Fake<IChannelManagerFactory>(); this.channelManager = A.Fake<IChannelManager>(); this.queueNameConvention = A.Fake<IQueueNameConvention>(); this.messageHandlerTypesIndexFactory = A.Fake<IMessageHandlerTypesIndexFactory>(); this.messageHandlerInvokerFactory = A.Fake<IMessageHandlerInvokerFactory>(); this.messageEncoder = A.Fake<IMessageEncoder>(); this.messageSerialiser = A.Fake<IMessageSerialiser>(); this.logger = A.Fake<ILogger>(); this.configuration = A.Fake<IConfiguration>(); this.model = A.Fake<IModel>(); this.messageHandlerTypesIndex = A.Fake<IMessageHandlerTypesIndex>(); this.messageHandlerInvoker = A.Fake<IMessageHandlerInvoker>(); this.messageHandlerTypes = new Type[0]; A.CallTo(() => this.channelManagerFactory.Create()).Returns(this.channelManager); A.CallTo(() => this.channelManager.CreateChannel()).Returns(this.model); A.CallTo(() => this.messageHandlerTypesIndexFactory.Create(A<Type[]>._)).Returns(this.messageHandlerTypesIndex); A.CallTo(() => this.messageHandlerInvokerFactory.CreateAggregate(A<IMessageHandlerTypesIndex>._)).Returns(this.messageHandlerInvoker); A.CallTo(() => this.configuration.ListenTimeout).Returns(20); this.componentUnderTest = new RabbitMQMessageListener(this.channelManagerFactory, this.messageHandlerTypes, this.messageHandlerTypesIndexFactory, this.messageHandlerInvokerFactory, this.queueNameConvention, this.messageEncoder, this.messageSerialiser, this.logger, this.configuration); }
public void ShouldNotDisposeOfConnectionDuringFinalise() { // Listen will create the channel this.componentUnderTest.ListenOnce(); this.componentUnderTest = null; GC.Collect(); GC.WaitForPendingFinalizers(); A.CallTo(() => this.channel.Dispose()).MustNotHaveHappened(); }