public async void WhenUserIsAuthorised_GetsProducer_AndProducerSubmissions_AndSaveChanges() { // Arrange var builder = new RemoveProducerHandlerBuilder(); var request = new RemoveProducer(Guid.NewGuid()); // Act await builder.Build().HandleAsync(request); // Assert A.CallTo(() => builder.RemoveProducerDataAccess.GetProducerRegistration(request.RegisteredProducerId)) .MustHaveHappened(Repeated.Exactly.Once); A.CallTo(() => builder.RemoveProducerDataAccess.GetProducerSubmissionsForRegisteredProducer(request.RegisteredProducerId)) .MustHaveHappened(Repeated.Exactly.Once); A.CallTo(() => builder.RemoveProducerDataAccess.SaveChangesAsync()) .MustHaveHappened(Repeated.Exactly.Once); }
public async void WhenUserIsUnauthorised_DoesNotGetProducer_OrSaveChanges() { // Arrange var builder = new RemoveProducerHandlerBuilder(); A.CallTo(() => builder.WeeeAuthorization.EnsureCanAccessInternalArea()) .Throws <SecurityException>(); var request = new RemoveProducer(Guid.NewGuid()); // Act await Assert.ThrowsAsync <SecurityException>(() => builder.Build().HandleAsync(request)); // Assert A.CallTo(() => builder.RemoveProducerDataAccess.GetProducerRegistration(A <Guid> ._)) .MustNotHaveHappened(); A.CallTo(() => builder.RemoveProducerDataAccess.SaveChangesAsync()) .MustNotHaveHappened(); }