Exemplo n.º 1
0
        public void TestShiftingSchedulesAheadUtc()
        {
            JobSchedule localSchedule = new JobSchedule();

            localSchedule.ExecutionTime     = 1400;
            localSchedule.ExecutionSchedule = 21; // Su/Tu/Th

            int utcOffset             = 18000;    // CDT offset
            int expectedExecutionTime = localSchedule.ExecutionTime - utcOffset + dayInSeconds;
            int expectedSchedule      = 74;       // M/W/Sat

            JobSchedule utcSchedule = ScheduleConversionHelper.ShiftSchedule(localSchedule, localSchedule.ExecutionTime - utcOffset);

            Assert.AreEqual(expectedExecutionTime, utcSchedule.ExecutionTime, string.Format("Got {0} for UTC Execution time, expected {1}", utcSchedule.ExecutionTime, expectedExecutionTime));
            Assert.AreEqual(expectedSchedule, utcSchedule.ExecutionSchedule, string.Format("Got {0} for UTC Execution schedule, expected {1}", utcSchedule.ExecutionSchedule, expectedSchedule));
        }
Exemplo n.º 2
0
        public void TestConversionsCancelOut()
        {
            JobSchedule firstLocalSchedule = new JobSchedule();

            firstLocalSchedule.ExecutionTime     = 70000;
            firstLocalSchedule.ExecutionSchedule = 23;
            JobSchedule secondLocalSchedule = new JobSchedule();

            secondLocalSchedule.ExecutionTime     = 10000;
            secondLocalSchedule.ExecutionSchedule = 23;

            JobSchedule firstUtcSchedule   = ScheduleConversionHelper.ConvertLocalToUtc(firstLocalSchedule);
            JobSchedule secondUtcSchedule  = ScheduleConversionHelper.ConvertLocalToUtc(secondLocalSchedule);
            JobSchedule firstLocalFromUtc  = ScheduleConversionHelper.ConvertUtcToLocal(firstUtcSchedule);
            JobSchedule secondLocalFromUtc = ScheduleConversionHelper.ConvertUtcToLocal(secondUtcSchedule);

            Assert.AreEqual(firstLocalSchedule.ExecutionTime, firstLocalFromUtc.ExecutionTime);
            Assert.AreEqual(secondLocalSchedule.ExecutionTime, secondUtcSchedule.ExecutionTime);
            Assert.AreEqual(firstLocalSchedule.ExecutionSchedule, firstLocalFromUtc.ExecutionSchedule);
            Assert.AreEqual(secondLocalSchedule.ExecutionSchedule, secondLocalFromUtc.ExecutionSchedule);
        }
Exemplo n.º 3
0
        public void TestShiftLeft(int local, int utc)
        {
            int shifted = ScheduleConversionHelper.ShiftDaysLeft(local);

            Assert.AreEqual(utc, shifted, string.Format("Got {0} for schedule bitmask, expected {1}", shifted, utc));
        }