public void ScheduleEveryDayOfTheWeekTest() { var now = DateTime.Now; var dueAt = now.AddSeconds(10).TimeOfDay; var startDateTime = now; var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleEveryDayOfTheWeek(); Assert.AreEqual(127, (int)builder.WeeklyFrequency); }
public void ScheduleEveryDayOfTheWeekTest() { var now = DateTime.Now; var dueAt = now.AddSeconds(10).TimeOfDay; var startDateTime = now; var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleEveryDayOfTheWeek(); var ws = builder.CreateWeeklySchedule(); Assert.AreEqual(startDateTime.Date.Add(dueAt), ws.DueDateTime); }
public void SchedueOnDays_OnWednesdayTest() { var now = DateTime.Now; var dueAt = now.AddSeconds(10).TimeOfDay; var startDateTime = now; var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleOnDays(false, false, false, true, false, false, false); Assert.AreEqual(8, (int)(builder.WeeklyFrequency & WeeklyFrequency.Wednesday), "Only Wednesday is expected"); Assert.AreEqual(8, (int)builder.WeeklyFrequency); }
public void ScheduleOnSundayOnly() { var now = DateTime.Now; var dueAt = now.AddSeconds(10).TimeOfDay; var startDateTime = now; var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleOnDays(true, false, false, false, false, false, false); var ws = builder.CreateWeeklySchedule(); var nextSunday = GetNextSunday(now); Assert.AreEqual(nextSunday.Date.Add(dueAt), ws.DueDateTime); }
public void ScheduleForWednesdayAndTuesday() { var now = DateTime.Now; var dueAt = now.AddMinutes(-10).TimeOfDay; var startDateTime = GetNextWeekOfTheDay(now, DayOfWeek.Wednesday).Add(now.TimeOfDay); var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleOnDays(false, false, true, true, false, false, false); var ws = builder.CreateWeeklySchedule(); var due = GetNextWeekOfTheDay(startDateTime, DayOfWeek.Tuesday); Assert.AreEqual(due.Date.Add(dueAt), ws.DueDateTime); }
public void ScheduleWeekendsOnlyTest() { var now = DateTime.Now; var dueAt = now.AddSeconds(10).TimeOfDay; var startDateTime = now; var endDateTime = startDateTime.AddDays(30); WeeklyScheduleBuilder builder = new WeeklyScheduleBuilder(dueAt, startDateTime, endDateTime); builder.ScheduleWeekendsOnly(); Assert.AreEqual(1, (int)(builder.WeeklyFrequency & WeeklyFrequency.Sunday), "Sunday is expected"); Assert.AreEqual(64, (int)(builder.WeeklyFrequency & WeeklyFrequency.Saturday), "Saturday is expected"); Assert.AreEqual(65, (int)builder.WeeklyFrequency); }