public void Select_Finds_Resident_Associated_With_RotationShift_First() { var rotationShift = new RotationShift(BitwiseDayOfWeek.Monday | BitwiseDayOfWeek.Tuesday, TimeConstants.StartOfDay12HourDay, TimeConstants.EndOfDay12HourDay); var shifts = new ShiftFactory().Create(new List<RotationShift> { rotationShift }, new DateTime(2012, 12, 3), new DateTime(2012, 12, 4)).ToList(); var residents = new List<Resident> { new Resident(), new Resident() }; shifts.First().Resident = residents.Skip(1).First(); var selector = new ResidentSelector(); selector.Constraints.Clear(); Assert.AreEqual(residents.Skip(1).First(), selector.Select(residents, shifts.Skip(1).First())); }
public void Create_ForEachDay_MutlidayRotationShift() { var mockery = new MockRepository(); var shiftDayFactory = mockery.StrictMock<IShiftDayFactory>(); var startDate = GetMonday(DateTime.Today); var mondayTuesdayRotationShift = new RotationShift(Common.BitwiseDayOfWeek.Monday | BitwiseDayOfWeek.Tuesday, TimeConstants.StartOfDay, TimeConstants.EndOfDay); var rotationShifts = new List<RotationShift> { mondayTuesdayRotationShift }; using (mockery.Record()) { Expect.Call(shiftDayFactory.CreateShiftsForDay(Arg<DateTime>.Is.Equal(startDate), Arg<IEnumerable<RotationShift>>.List.IsIn(mondayTuesdayRotationShift))).Return(new List<Shift>()); Expect.Call(shiftDayFactory.CreateShiftsForDay(Arg<DateTime>.Is.Equal(startDate.AddDays(1)), Arg<IEnumerable<RotationShift>>.List.IsIn(mondayTuesdayRotationShift))).Return(new List<Shift>()); } using (mockery.Playback()) { new ShiftFactory(shiftDayFactory).Create(rotationShifts, startDate, startDate.AddDays(1)); } }