public void GetAllDescending_ShouldReturnTwoWeekSchedulesInCorrectOrder() { var weekScheduleStub = new Mock <IEfRepostory <WeekSchedule> >(); var unitOfWorkStub = new Mock <IUnitOfWork>(); var datetimeProviderStub = new Mock <IDatetimeProvider>(); var list = new List <WeekSchedule>(); var weekScheduleOne = new WeekSchedule { WeekStart = new DateTime(2017, 10, 10) }; var weekScheduleTwo = new WeekSchedule { WeekStart = new DateTime(2017, 11, 11) }; list.Add(weekScheduleOne); list.Add(weekScheduleTwo); var dbSetStub = list.AsQueryable(); var sut = new WeekScheduleService(weekScheduleStub.Object, unitOfWorkStub.Object, datetimeProviderStub.Object); weekScheduleStub.Setup(x => x.All).Returns(dbSetStub); var result = sut.GetAllDescending(); Assert.AreEqual(2, result.Count); Assert.AreSame(weekScheduleTwo, result.First()); }
public void GetAllDescending_ShouldCallWeekScheduleRepoAllPropertyOnce() { var weekScheduleStub = new Mock <IEfRepostory <WeekSchedule> >(); var unitOfWorkStub = new Mock <IUnitOfWork>(); var datetimeProviderStub = new Mock <IDatetimeProvider>(); var dbSetStub = new List <WeekSchedule>().AsQueryable(); var sut = new WeekScheduleService(weekScheduleStub.Object, unitOfWorkStub.Object, datetimeProviderStub.Object); weekScheduleStub.Setup(x => x.All).Returns(dbSetStub); var result = sut.GetAllDescending(); weekScheduleStub.Verify(x => x.All, Times.Once); }