public SearchCropYieldsViewModel SearchCropYieldsHelper(SearchCropYieldsViewModel model, int farmID) { IQueryable <CropYield> cropYieldsList = cropYieldRepoInterface.CropYieldList; // Search by Farm if (farmID != 0) { cropYieldsList = cropYieldsList.Where(cY => cY.FarmID == farmID); } if (farmID == 0) { if (model.FarmID != null) { cropYieldsList = cropYieldsList.Where(cY => cY.FarmID == model.FarmID); } } // Search by crop if (model.CropID != null) { cropYieldsList = cropYieldsList.Where(cY => cY.CropID == model.CropID); } // Search by year if (model.SearchProductionYear != null) { cropYieldsList = cropYieldsList.Where(cY => cY.ProductionYear == model.SearchProductionYear); } model.CropYieldList = cropYieldsList.ToList <CropYield>(); return(model); }
public SearchCropYieldsViewModel SearchCropYields(SearchCropYieldsViewModel model) { IQueryable <CropYield> cropYieldsList = database.CropYields.Include(cY => cY.Crop).Include(cY => cY.Farm); // Search by farm if (model.FarmID != null) { cropYieldsList = cropYieldsList.Where(cY => cY.FarmID == model.FarmID); } // Search by crop if (model.CropID != null) { cropYieldsList = cropYieldsList.Where(cY => cY.CropID == model.CropID); } // Search by year if (model.SearchProductionYear != null) { cropYieldsList = cropYieldsList.Where(cY => cY.ProductionYear == model.SearchProductionYear); } return(model); }
public IActionResult SearchCropYields() { PopulateDropDownList(); SearchCropYieldsViewModel model = new SearchCropYieldsViewModel(); return(View(model)); }
public void ShouldSearchCropYieldsWithoutInputs() { // 1. Arrange // Populate the Mock CropYield Objects IQueryable <CropYield> mockCropYieldList = PopulateCropYields(); mockCropYieldRepo.Setup(m => m.CropYieldList).Returns(mockCropYieldList); // 2. Act SearchCropYieldsViewModel model = new SearchCropYieldsViewModel(); SearchCropYieldsViewModel result = cropsController.SearchCropYieldsHelper(model, 0); // 3. Assert Assert.Equal(4, result.CropYieldList.Count); Assert.Equal(mockCropYieldList.ToList <CropYield>(), model.CropYieldList); }
public void ShouldSearchCropYieldsWithYearInput() { // 1. Arrange // Populate the Mock CropYield Objects IQueryable <CropYield> mockCropYieldList = PopulateCropYields(); mockCropYieldRepo.Setup(m => m.CropYieldList).Returns(mockCropYieldList); // 2. Act SearchCropYieldsViewModel model = new SearchCropYieldsViewModel(); model.SearchProductionYear = 2019; SearchCropYieldsViewModel result = cropsController.SearchCropYieldsHelper(model, 0); List <CropYield> expectedSearchResult = mockCropYieldList.Where(m => m.ProductionYear == 2019).ToList <CropYield>(); // 3. Assert Assert.Equal(3, result.CropYieldList.Count); Assert.Equal(expectedSearchResult, model.CropYieldList); }
public IActionResult SearchCropYields(SearchCropYieldsViewModel model) { PopulateDropDownList(); string userID = null; int farmID = ValidateUser(out userID); SearchCropYieldsViewModel resultModel = new SearchCropYieldsViewModel(); if (userID != null) { resultModel = SearchCropYieldsHelper(model, farmID); resultModel.GroupingByFarmAndCrop = Grouping(resultModel.CropYieldList); } else { resultModel.CropYieldList = null; resultModel.GroupingByFarmAndCrop = null; } return(View(resultModel)); }