public async Task PublishAsync_Message_GetsPublished() { // arrange var autoMocker = new AutoMocker(); var busControl = autoMocker.GetMock <IBusControl>(); var logger = autoMocker.GetMock <IAppLogger <AppServiceBus> >(); var sut = autoMocker.CreateInstance <AppServiceBus>(); var request = new CreateTestStudent(); var cts = new CancellationTokenSource(); // act await sut.PublishAsync(request, cts.Token); // assert logger.Verify(l => l.Debug($"Publishing message of type - {request.GetType().Name} ...")); logger.Verify(l => l.Debug("Message published")); // todo: fix this verification //busControl.Verify(m => m.Publish(request, cts.Token)); }
public async Task Consume_ValidRequestObject_GetsConsumed() { // arrange var autoMocker = new AutoMocker(); var sut = autoMocker.CreateInstance <BoltOnMassTransitConsumer <CreateTestStudent> >(); var mediator = autoMocker.GetMock <IMediator>(); var logger = autoMocker.GetMock <IBoltOnLogger <BoltOnMassTransitConsumer <CreateTestStudent> > >(); var consumerContext = new Mock <ConsumeContext <CreateTestStudent> >(); var request = new CreateTestStudent(); consumerContext.Setup(c => c.Message).Returns(request); // act await sut.Consume(consumerContext.Object); // assert logger.Verify(l => l.Debug($"Message of type {request.GetType().Name} consumer. " + "Sending to mediator...")); logger.Verify(l => l.Debug("Message sent to Mediator")); mediator.Verify(m => m.ProcessAsync(request, It.IsAny <CancellationToken>())); }