public async Task ValidateAddItem_RuleSetDefault_Valid() { // Arrange var validator = new NewCartItemValidator(); var newCartItem = new NewCartItem(Rand.Guid().ToString(), Rand.Int(1, InStockQuantity)) { CartProduct = _fixture.Create <CartProduct>() }; // Act var result = await validator.ValidateAsync(newCartItem, ruleSet : "default"); // Assert result.IsValid.Should().BeTrue(); result.Errors.Should().BeEmpty(); }
public async Task ValidateAddItem_RuleSetDefault_Invalid() { // Arrange var validator = new NewCartItemValidator(); var newCartItem = new NewCartItem(null, 0); // Act var result = await validator.ValidateAsync(newCartItem, ruleSet : "default"); // Assert result.IsValid.Should().BeFalse(); result.Errors.Should().NotBeEmpty(); result.Errors.Should().HaveCount(3); result.Errors.Should().Contain(x => x.PropertyName == "Quantity" && x.ErrorCode == nameof(GreaterThanValidator)); result.Errors.Should().Contain(x => x.PropertyName == "ProductId" && x.ErrorCode == nameof(NotNullValidator)); result.Errors.Should().Contain(x => x.PropertyName == "CartProduct" && x.ErrorCode == nameof(NotNullValidator)); }