public async Task PublishAsync_ShouldSendMessageToTopicClient() { var f = new LegacyTopicMessagePublisherTestsFixture(); await f.Sut.PublishAsync(f.ApprovedCohortReturnedToProvider); f.VerifyTopicClientIsCalledWithMessage(); }
public void PublishAsync_ShouldNotCloseTopicClientConnectionWhenClientIsNull() { var f = new LegacyTopicMessagePublisherTestsFixture().ThrowInvalidOperationExceptionWhenCreatingTopicClient(); Assert.ThrowsAsync <InvalidOperationException>(() => f.Sut.PublishAsync(f.ApprovedCohortReturnedToProvider)); f.VerifyTopicClientDoesNotCloseConnection(); }
public async Task PublishAsync_ShouldCreateTopicClientPassingCorrectParameters() { var f = new LegacyTopicMessagePublisherTestsFixture(); await f.Sut.PublishAsync(f.ApprovedCohortReturnedToProvider); f.VerifyTopicClientFactoryReceivesConnectionStringAndMessageGroupName("approved_cohort_returned_to_provider"); }
public async Task PublishAsync_ShouldCreateTopicClientPassingInNameOfClassAsMessageGroupName() { var f = new LegacyTopicMessagePublisherTestsFixture(); var @event = new SimpleTestObject(); await f.Sut.PublishAsync(@event); f.VerifyTopicClientFactoryReceivesConnectionStringAndMessageGroupName(@event.GetType().Name); }
public async Task PublishAsync_ShouldNotCloseTopicClientConnectionIfAlreadyClosing() { var f = new LegacyTopicMessagePublisherTestsFixture(); f.TopicClient.Setup(x => x.IsClosedOrClosing).Returns(true); await f.Sut.PublishAsync(f.ApprovedCohortReturnedToProvider); f.VerifyTopicClientDoesNotCloseConnection(); }
public void PublishAsync_ShouldLogAndReThrowException() { var f = new LegacyTopicMessagePublisherTestsFixture().ThrowInvalidOperationExceptionWhenCallingTopicClientSendAsync(); Assert.ThrowsAsync <InvalidOperationException>(() => f.Sut.PublishAsync(f.ApprovedCohortReturnedToProvider)); }