view for CommitedVsDispatched view and Wrapping filtering criteria objects
        public void CanBackPostCommittedVsDispatchedReport()
        {
            //ACT
            //TODO: Seed data into CommittedVsDispatchedViewModel before proceding with testing
            var viewModel = new CommittedVsDispatchedViewModel { };
            var viewResult = _stockManagementController.CommittedVsDispatchedReport(viewModel) as ViewResult;

            //ASSERT
            Assert.NotNull(viewResult);
            Assert.IsInstanceOf<IEnumerable<Program>>(viewResult.ViewBag.Program);
            Assert.IsInstanceOf<IEnumerable<CommodityType>>(viewResult.ViewBag.CommodityTypes);
        }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="viewModel"></param>
 /// <returns></returns>
 public ActionResult CommittedVsDispatchedReport(CommittedVsDispatchedViewModel viewModel)
 {
     ViewBag.Program = viewModel.ProgramId == null ? "All" : _programService.GetAllProgram().Where(c => c.ProgramID == viewModel.ProgramId).Select(c => c.Name).Single();
     ViewBag.CommodityTypes = viewModel.CommodityTypeId == null ? "All" : _commodityTypeService.GetAllCommodityType().Where(c => c.CommodityTypeID == viewModel.CommodityTypeId).Select(c => c.Name).Single();
     return PartialView();
 }
 /// <summary>
 /// 
 /// </summary>
 /// <returns></returns>
 public ActionResult CommittedVsDispatched()
 {
     var user = _userProfileService.GetUser(User.Identity.Name);
     var storeViewModel = _hubService.GetAllStoreByUser(user);
     var areas = _adminUnitService.GetAllAreasForReport();
     var codes = ConstantsService.GetAllCodes();
     var commodityTypes = _commodityTypeService.GetAllCommodityTypeForReprot();
     var programs = _programService.GetAllProgramsForReport();
     var viewModel = new CommittedVsDispatchedViewModel(storeViewModel, areas, codes, commodityTypes, programs, user);
     return View(viewModel);
 }