public void CategoryExists_tells_if_an_id_exists(int testId, bool expectedResult) { // Arrange var categories = new List <BudgetCategory> { new BudgetCategory { ID = 1 } }.AsQueryable(); _mockRepo.Setup(m => m.GetCategories()).Returns(categories); // Act var result = _testService.CategoryExists(testId); // Assert Assert.AreEqual(expectedResult, result); }
/// <summary> /// The default Constructor /// </summary> /// <param name="service">The service to use in the controller</param> public BudgetCategoryController(ICategoryManagerService service) : base( // Setup required functions singleAdder: vm => service.AddCategoryAsync(vm.Name, vm.Amount, vm.Type), singleDeleter: id => service.RemoveCategoryAsync(id), singleEditor: vm => service.UpdateCategoryAsync(vm.NavId, vm.Amount, vm.EffectiveFrom, vm.Type), existanceChecker: vm => service.CategoryExists(vm.NavId) ) { CollectionGetter = () => GetViewModelCollection(service); ViewModelCreator = id => CreateViewModel(id, service); ExceptionHandling = new Dictionary <Type, Func <Exception, IActionResult> > { { typeof(InvalidDateExpection), ex => { ModelState.AddModelError(nameof(BudgetCategory.EffectiveFrom), ex.Message); return(null); } }, { typeof(ExpenseTrackerException), ex => { return(NotFound()); } } }; }