public async Task Handle_Success() { // Arrange var request = new ExportIcalStream(validEventId, outputPort); // Act var result = await interactor.Handle(request, CancellationToken.None); // Assert result.IsSuccessful.Should().BeTrue(); A.CallTo(() => outputPort.Output(A <ExportIcalStreamOutput> .That.Matches(o => o.IcalStream != null))) .MustHaveHappenedOnceExactly(); A.CallTo(() => telemetryService.TrackEvent(TelemetryEventNames.IcalRequested, A <object> ._)) .MustHaveHappenedOnceExactly(); }
public async Task Handle_EventNotFound_MustFail() { // Arrange var request = new ExportIcalStream(validEventId, outputPort); A.CallTo(() => repository.FindByIdAsync(A <Guid> ._)) .ReturnsLazily(() => Task.FromResult <Tauchbolde.Domain.Entities.Event>(null)); // Act var result = await interactor.Handle(request, CancellationToken.None); // Assert result.IsSuccessful.Should().BeFalse(); result.ResultCategory.Should().Be(ResultCategory.NotFound); A.CallTo(() => outputPort.Output(A <ExportIcalStreamOutput> ._)) .MustNotHaveHappened(); A.CallTo(() => telemetryService.TrackEvent(TelemetryEventNames.IcalRequested, A <object> ._)) .MustNotHaveHappened(); }