public async Task <UpdateCustomerResponse> Update(UpdateCustomerRequest command) { var validators = new UpdateCustomerValidator(_Repository, command); if (!validators.isValid()) { throw new ValidationRuleException(validators.Errors.ToArray()); } return(await _Mediator.Send(command)); }
public async Task <ActionResult> Update(Guid id, [FromBody] UpdateCustomerRequest request) { var validator = new UpdateCustomerValidator(); var validationResult = await validator.ValidateAsync(request); if (id == Guid.Empty || !validationResult.IsValid) { return(BadRequest(validationResult.Errors)); } return(Ok(_customerService.Update(id, request))); }
public void ShouldCatchIfEMailIsTooLong() { var customer = new UpdateCustomerRequest() { FirstName = "Bob", Surname = "something", EMail = "*****@*****.**", CustomerPassword = "******" }; var validator = new UpdateCustomerValidator(); var result = validator.Validate(customer); Assert.False(result.IsValid); Assert.Equal(1, result.Errors.Count()); Assert.Equal("EMail", result.Errors.FirstOrDefault().PropertyName); }
public void ShouldCatchIfFirstNameIsEmpty() { var customer = new UpdateCustomerRequest() { FirstName = "", Surname = "Bobby", EMail = "*****@*****.**", CustomerPassword = "******" }; var validator = new UpdateCustomerValidator(); var result = validator.Validate(customer); Assert.False(result.IsValid); Assert.Equal(1, result.Errors.Count()); Assert.Equal("FirstName", result.Errors.FirstOrDefault().PropertyName); }
public void ShouldCatchIfEMailIsNotAnEmail() { var customer = new UpdateCustomerRequest() { FirstName = "Bob", Surname = "something", EMail = "Random String", CustomerPassword = "******" }; var validator = new UpdateCustomerValidator(); var result = validator.Validate(customer); Assert.False(result.IsValid); Assert.Equal(1, result.Errors.Count()); Assert.Equal("EMail", result.Errors.FirstOrDefault().PropertyName); }
public EfUpdateCustomerCommand(MovingContext context, UpdateCustomerValidator validator) { _context = context; _validator = validator; }