public void GetDeliverableNameByMopNWBS_Test() { //Set Data List <DropDownViewModel> lstdropDownViewModel = new List <DropDownViewModel>(); DropDownViewModel drpDownModel = new DropDownViewModel() { }; List <WBS_Deliverables> lstWBS = new List <WBS_Deliverables>(); WBS_Deliverables wbs1 = new WBS_Deliverables() { TypeOfWorkId = 542, WBSElementId = 17, FullWBSNumber = "11234.001.002", ProductionMethodTypeId = 1, ProductionMethodTypeName = "Post House", DeliverableId = 1, DeliverableName = "Deliverable1" }; WBS_Deliverables wbs2 = new WBS_Deliverables() { TypeOfWorkId = 2345, WBSElementId = 21, FullWBSNumber = "12456.001.002", ProductionMethodTypeId = 2, ProductionMethodTypeName = "Contract Request", DeliverableId = 2, DeliverableName = "Deliverable2" }; WBS_Deliverables wbs3 = new WBS_Deliverables() { TypeOfWorkId = 3456, WBSElementId = 31, FullWBSNumber = "11234.003.001", ProductionMethodTypeId = 3, ProductionMethodTypeName = "Miscellaneous", DeliverableId = 3, DeliverableName = "Deliverable3" }; lstWBS.Add(wbs1); lstWBS.Add(wbs2); lstWBS.Add(wbs3); DropDownViewModel vm1 = new DropDownViewModel() { Text = "Deliverable1", Value = "1", Id = 1 }; DropDownViewModel vm2 = new DropDownViewModel() { Text = "Deliverable2", Value = "2", Id = 2 }; DropDownViewModel vm3 = new DropDownViewModel() { Text = "Deliverable3", Value = "3", Id = 3 }; lstdropDownViewModel.Add(vm1); lstdropDownViewModel.Add(vm2); lstdropDownViewModel.Add(vm3); //Inputs bool isExternal = false; string filter = ""; int mrmUserid = 1234; string networkLogin = "******"; int wbsId = 31; int mopId = 1; #region Mock //Mock //FinanceService Service Mock mockFinanceService.Setup(x => x.GetDeliverableNameByMopNWBS(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <bool>())).Returns(lstWBS); //iWBS_DeliverablesRepository Mock mockWBS_DeliverablesRepository.Setup(x => x.GetDeliverableNameByMopNWBS(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <bool>())).Returns(lstWBS); var financeService = new FinanceServiceMock( _iWBS_DeliverablesRepository: mockWBS_DeliverablesRepository.Object); //Finance Controller Mock var DropDownController = new DropDownControllerMock(financeService: mockFinanceService.Object); #endregion //Assertions mockFinanceService.Verify(); mockWBS_DeliverablesRepository.Verify(); var serviceResult = financeService.GetDeliverableNameByMopNWBS(wbsId, mopId, isExternal); #region "Assertion of GetWBSByTow" Assert.IsNotNull(serviceResult); //Result is not Null Assert.AreEqual(serviceResult, lstWBS); //Asserting the expected return object with dummy data Assert.AreEqual(serviceResult.Count, 3); //Assert matching the return data with my input var controllerResult = DropDownController.GetDeliverableNameByMopNWBS(wbsId, mopId, isExternal, filter, mrmUserid, networkLogin); Assert.IsNotNull(controllerResult);//Result is not Null Assert.AreEqual(controllerResult.Count, 3); Assert.AreEqual(controllerResult[0].Text, "Deliverable1"); filter = "Deliverable2"; var controllerResultForFilter = DropDownController.GetDeliverableNameByMopNWBS(wbsId, mopId, isExternal, filter, mrmUserid, networkLogin); Assert.IsNotNull(controllerResultForFilter);//Result is not Null Assert.AreSame(controllerResultForFilter[0].Text.Trim(), "Deliverable2"); #endregion }