public void ConstructorTimeSortTest() { HourRange hourRange = new HourRange(new Time(2, 45), new Time(1, 30)); Assert.AreEqual(hourRange.Start, new Time(1, 30)); Assert.AreEqual(hourRange.End, new Time(2, 45)); } // ConstructorTimeSortTest
protected virtual bool IsMatchingHour(HourRange hour, TContext context) { if (Filter.Years.Count > 0 && Filter.Years.Contains(hour.Year) == false) { return(false); } if (Filter.Months.Count > 0 && Filter.Months.Contains(hour.Month) == false) { return(false); } if (Filter.Days.Count > 0 && Filter.Days.Contains(hour.Day) == false) { return(false); } if (Filter.WeekDays.Count > 0 && Filter.WeekDays.Contains(hour.Start.DayOfWeek) == false) { return(false); } if (Filter.Hours.Count > 0 && Filter.Hours.Contains(hour.Hour) == false) { return(false); } return(CheckExcludePeriods(hour)); }
public void ConstructorHourTest() { HourRange hourRange = new HourRange(1); Assert.AreEqual(hourRange.Start, new Time(1)); Assert.AreEqual(hourRange.End, new Time(1)); } // ConstructorHourTest
// TODO should be configurable, for now restrictions in constructor (hideous) public PicoYPlacaScheduler() : base() { HourRange morning = new HourRange("07:00", "09:30"); HourRange evening = new HourRange("16:00", "19:30"); var ranges = new List <HourRange>() { morning, evening }; SetDay(DayOfWeek.Monday, new List <string>() { "1", "2" }, ranges); SetDay(DayOfWeek.Tuesday, new List <string>() { "3", "4" }, ranges); SetDay(DayOfWeek.Wednesday, new List <string>() { "5", "6" }, ranges); SetDay(DayOfWeek.Thursday, new List <string>() { "7", "8" }, ranges); SetDay(DayOfWeek.Friday, new List <string>() { "9", "0" }, ranges); }
// TODO should be configurable, for now restrictions in constructor (hideous) public HoyNoCirculaScheduler() : base() { HourRange allDay = new HourRange("05:00", "20:00"); var ranges = new List <HourRange>() { allDay }; SetDay(DayOfWeek.Monday, new List <string>() { "1", "2" }, ranges); SetDay(DayOfWeek.Tuesday, new List <string>() { "3", "4" }, ranges); SetDay(DayOfWeek.Wednesday, new List <string>() { "5", "6" }, ranges); SetDay(DayOfWeek.Thursday, new List <string>() { "7", "8" }, ranges); SetDay(DayOfWeek.Friday, new List <string>() { "9", "0" }, ranges); }
protected HourRange StartHourhVisit(HourRange hour, TContext context, SeekDirection?visitDirection = null) { hour.ShouldNotBeNull("hour"); var direction = visitDirection ?? SeekDirection; if (IsDebugEnabled) { log.Debug("Hour 단위로 탐색합니다. hour=[{0}], context=[{1}], direction=[{2}]", hour, context, direction); } HourRange lastVisited = null; OnVisitStart(); var minStart = DateTime.MinValue; var maxEnd = DateTime.MaxValue.AddYears(-1); var offset = (direction == SeekDirection.Forward) ? 1 : -1; while (hour.Start > minStart && hour.End < maxEnd) { if (OnVisitHour(hour, context) == false) { lastVisited = hour; break; } hour = hour.AddHours(offset); } OnVisitEnd(); if (IsDebugEnabled) { log.Debug("마지막 탐색 Hour. lastVisited=[{0}]", lastVisited); } return(lastVisited); }
protected virtual bool OnVisitHour(HourRange hour, TContext context) { return(true); }
public void IsNotMomentTest() { HourRange hourRange = new HourRange(new Time(2, 45, 33, 876), new Time(2, 45, 33, 877)); Assert.IsFalse(hourRange.IsMoment); } // IsNotMomentTest
public TestData() { Duration = new HourRange(); }