public void Create_should_return_valid_context() { var channel = NSubstitute.Substitute.For <IModel>(); var references = new QueueReferences("exchange", "queue", "routingKey", "deadletterExch", "deadLetterQ"); var pool = NSubstitute.Substitute.For <IPublisherChannelContextPool>(); var ctx = new PublisherChannelContext(channel, references, pool); pool.Get(references) .Returns(ctx); var factory = NSubstitute.Substitute.For <IQueueReferenceFactory>(); factory.Create((IMessage)null) .ReturnsForAnyArgs(references); var sut = new PublisherChannelFactory(pool, factory); var message = DummyMessage.New(); var result = sut.Create(message); result.Should().NotBeNull(); result.Channel.Should().Be(channel); result.QueueReferences.Should().Be(references); }
public void Create_should_throw_when_argument_null() { var pool = NSubstitute.Substitute.For <IPublisherChannelContextPool>(); var factory = NSubstitute.Substitute.For <IQueueReferenceFactory>(); var sut = new PublisherChannelFactory(pool, factory); Assert.Throws <ArgumentNullException>(() => sut.Create(null)); }
public void Create_should_return_valid_context() { var connection = NSubstitute.Substitute.For <IBusConnection>(); var factory = NSubstitute.Substitute.For <IQueueReferenceFactory>(); var references = new QueueReferences("exchange", "queue", "deadletterExch", "deadLetterQ"); factory.Create(null) .ReturnsForAnyArgs(references); var sut = new PublisherChannelFactory(connection, factory); var message = DummyMessage.New(); var result = sut.Create(message); result.Should().NotBeNull(); result.Channel.Should().NotBeNull(); result.QueueReferences.Should().Be(references); }