public void ShouldHaveError_Name_isEmpty() { var validator = new EditCategoryValidator(); var command = CommandFactory.GetEditCategoryCommand(It.IsAny <int>(), "", "testDescr"); validator.ShouldHaveValidationErrorFor(x => x.Name, command); }
public void ShouldNotHaveError_Description_isSpecified() { var validator = new EditCategoryValidator(); var command = CommandFactory.GetEditCategoryCommand(It.IsAny <int>(), "TestName", "testDescr"); validator.ShouldNotHaveValidationErrorFor(x => x.Description, command); }
public void ShouldNotHaveError_Description_okLength() { string s = CreateStringOfLength(200); var validator = new EditCategoryValidator(); var command = CommandFactory.GetEditCategoryCommand(It.IsAny <int>(), "TestName", s); validator.ShouldNotHaveValidationErrorFor(x => x.Description, command); }
public async Task <IActionResult> Edit(int id, CategoryViewModel categoryViewModel) { if (id != categoryViewModel.Category.CategoryId) { return(RedirectToAction("Error", "Home")); } Category checkCategoryName = await _context.Categories.SingleOrDefaultAsync(x => x.Name == categoryViewModel.Category.Name && x.CategoryId == categoryViewModel.Category.CategoryId); var result = new FluentValidation.Results.ValidationResult();//Bypass the name validator and didn't know how to do it any other way if (checkCategoryName != null) { var validator = new EditCategoryValidator(); result = validator.Validate(categoryViewModel.Category); } else { var validator = new CategoryValidator(_context.Categories); result = validator.Validate(categoryViewModel.Category); } if (result.IsValid) { _context.Update(categoryViewModel.Category); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } else { foreach (var item in result.Errors) { ModelState.AddModelError(string.Empty, item.ErrorMessage); } } categoryViewModel.Parents = new SelectList(_context.Categories.Where(x => x.ParentId == null), "CategoryId", "Name", categoryViewModel.Category.ParentId); return(View(categoryViewModel)); }
public EfEditCategoryCommand(BlogContext context, EditCategoryValidator validator, IMapper mapper) { _context = context; _validator = validator; _mapper = mapper; }