public void ItShouldSetExecutionDateAfterRun() { var plan = new ForecastPlan <int> { CreationDate = DateTime.Today }; var positions = new List <IPosition>(); var positionOpen = new Mock <IPosition>(); var positionActive1 = new Mock <IPosition>(); var positionActive2 = new Mock <IPosition>(); positionOpen.Setup(x => x.Status).Returns(HCPositionStatus.Open); positionOpen.Setup(x => x.HCType).Returns(new HCTypeDto { Code = "FTE" }); positionOpen.Setup(x => x.Company).Returns(new CompanyDto { Code = "4001" }); positionActive1.Setup(x => x.Status).Returns(HCPositionStatus.Active); positionActive1.Setup(x => x.HCType).Returns(new HCTypeDto { Code = "FTE" }); positionActive1.Setup(x => x.Company).Returns(new CompanyDto { Code = "4003" }); positionActive2.Setup(x => x.Status).Returns(HCPositionStatus.Active); positionActive2.Setup(x => x.HCType).Returns(new HCTypeDto { Code = "FTE" }); positionActive2.Setup(x => x.Company).Returns(new CompanyDto { Code = "4001" }); positions.Add(positionActive1.Object); positions.Add(positionActive2.Object); positions.Add(positionOpen.Object); plan.AddPositions(positions); var dataService = new Mock <IForecastDataAccessService>(); dataService.Setup(x => x.GetPlan(1)).Returns(plan); //dataService.Setup(x => x.GetPositions(It.IsAny<DateTime>())).Returns(positions); var service = new ForecastService <int>(dataService.Object); service.LoadPlan(1); service.Run(); Thread.Sleep(5000); Assert.AreEqual(DateTime.Today.Date, service.Plan.ExecutionDate.Value.Date); }