public async Task ValidateAsync_LoyaltyCardExists_DoesNothing() { // Arrange var loyaltycardContainer = new Mock <ILoyaltyCardContainer>(); var loyaltycard = new LoyaltyCard(); var loyaltycardDAL = new Mock <ILoyaltyCardDAL>(); var loyaltycardIdentity = new Mock <ILoyaltyCardIdentity>(); loyaltycardDAL.Setup(x => x.GetAsync(loyaltycardIdentity.Object)).ReturnsAsync(loyaltycard); var loyaltycardGetService = new LoyaltyCardService(loyaltycardDAL.Object); // Act var action = new Func <Task>(() => loyaltycardGetService.ValidateAsync(loyaltycardContainer.Object)); // Assert await action.Should().NotThrowAsync <Exception>(); }
public async Task ValidateAsync_LoyaltyCardNotExists_ThrowsError() { // Arrange var fixture = new Fixture(); var id = fixture.Create <int>(); var loyaltycardContainer = new Mock <ILoyaltyCardContainer>(); loyaltycardContainer.Setup(x => x.LoyaltyCardId).Returns(id); var loyaltycardIdentity = new Mock <ILoyaltyCardIdentity>(); var loyaltycard = new LoyaltyCard(); var loyaltycardDAL = new Mock <ILoyaltyCardDAL>(); loyaltycardDAL.Setup(x => x.GetAsync(loyaltycardIdentity.Object)).ReturnsAsync((LoyaltyCard)null); var loyaltycardGetService = new LoyaltyCardService(loyaltycardDAL.Object); // Act var action = new Func <Task>(() => loyaltycardGetService.ValidateAsync(loyaltycardContainer.Object)); // Assert await action.Should().ThrowAsync <InvalidOperationException>($"LoyaltyCard not found by id {id}"); }