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);
        }
Example #2
0
        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);
        }
Example #4
0
        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);
        }
Example #5
0
        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);
        }