public void EmptyCategoryNameNotValid() { var newCategory = ExpensesTrackerFactory.DefaultCategory(string.Empty); var validation = _DomainService.IsValidNewCategory(newCategory, null); Assert.IsFalse(validation.IsValid()); Assert.AreEqual(Messages.InvalidCategoryName, validation.ValidationErrorMessage); }
public void CantAddDuplicateMissingTrimName() { var newCategory = ExpensesTrackerFactory.DefaultCategory(" Coffee "); var systemCategoies = new List <ExpenseCategory>() { new ExpenseCategory { Name = "COFFEE" } }; var validation = _DomainService.IsValidNewCategory(newCategory, systemCategoies); Assert.IsFalse(validation.IsValid()); Assert.AreEqual(Messages.CantAddDuplicateCategory, validation.ValidationErrorMessage); }
public async Task <NewCategoryResponse> CreateDefaultCategory(ExpenseCategoryRequest request) { var categories = await _context.ExpenseCategory.Where(c => c.IsDefault == true).ToListAsync(); var newCategory = ExpensesTrackerFactory.DefaultCategory(request.CategoryName); var validation = _domainService.IsValidNewCategory(newCategory, categories); if (validation.IsValid()) { _context.ExpenseCategory.Add(newCategory); int result = await _context.SaveChangesAsync(); return(new NewCategoryResponse { CategoryId = newCategory.UId }); } return(new NewCategoryResponse { ValidationMessage = validation.ValidationErrorMessage }); }