Exemplo n.º 1
0
        public static void MonthlySchedule_HourAndMinuteInRange_Valid()
        {
            var o = new MonthlyScheduleInUtc {
                Hour = 22, Minute = 23
            };

            Assert.NotNull(o);
            o.ThrowIfInvalid();
        }
        public void MonthlyScheduleRoundtripWillDeserializeIntoBaseClass()
        {
            var schedule = new MonthlyScheduleInUtc {
                DaysOfMonth = new[] { 4 }, Hour = 4, Minute = 22
            };
            var json             = this.bsonSerializer.SerializeToString(schedule);
            var newScheduleBase  = this.bsonSerializer.Deserialize <ScheduleBase>(json);
            var newScheduleTyped = Assert.IsType <MonthlyScheduleInUtc>(newScheduleBase);

            Assert.Equal(schedule.DaysOfMonth, newScheduleTyped.DaysOfMonth);
            Assert.Equal(schedule.Hour, newScheduleTyped.Hour);
            Assert.Equal(schedule.Minute, newScheduleTyped.Minute);
            Assert.Equal(schedule, newScheduleTyped);
        }
        public static void GetCronExpressionFromSchedule_Monthly_Works()
        {
            var schedule = new MonthlyScheduleInUtc {
                DaysOfMonth = new[] { 20 }, Hour = 22, Minute = 48
            };
            var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule);

            Assert.Equal("48 22 20 * *", cron);

            var newSchedule      = ScheduleCronExpressionConverter.FromCronExpression(cron);
            var newScheduleTyped = Assert.IsType <MonthlyScheduleInUtc>(newSchedule);

            Assert.Equal(schedule.GetType(), newScheduleTyped.GetType());
            Assert.Equal(schedule.DaysOfMonth.Single(), newScheduleTyped.DaysOfMonth.Single());
            Assert.Equal(schedule.Hour, newScheduleTyped.Hour);
            Assert.Equal(schedule.Minute, newScheduleTyped.Minute);
        }
Exemplo n.º 4
0
        public CronDummyFactory()
        {
            AutoFixtureBackedDummyFactory.UseRandomConcreteSubclassForDummy <ScheduleBase>();

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new DailyScheduleInUtc
                {
                    Hour   = A.Dummy <int>().ThatIsInRange(0, 23),
                    Minute = A.Dummy <int>().ThatIsInRange(0, 59),
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new ExpressionSchedule
                {
                    CronExpression = "*/" + A.Dummy <int>().ThatIsInRange(1, 4) + " * * * *",
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new HourlySchedule
                {
                    Minute = A.Dummy <int>().ThatIsInRange(0, 59),
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new IntervalSchedule()
                {
                    Interval = new TimeSpan(A.Dummy <long>().ThatIsInRange(0, 10000))
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new MonthlyScheduleInUtc()
                {
                    DaysOfMonth = new[]
                    {
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                    }.Distinct().ToArray(),
                    Hour   = A.Dummy <int>().ThatIsInRange(0, 23),
                    Minute = A.Dummy <int>().ThatIsInRange(0, 59),
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new WeeklyScheduleInUtc()
                {
                    DaysOfWeek = Some.Dummies <DayOfWeek>(3).ToArray(),
                    Hour       = A.Dummy <int>().ThatIsInRange(0, 23),
                    Minute     = A.Dummy <int>().ThatIsInRange(0, 59),
                };

                return(result);
            });

            AutoFixtureBackedDummyFactory.AddDummyCreator(
                () =>
            {
                var result = new YearlyScheduleInUtc()
                {
                    MonthsOfYear = Some.Dummies <MonthOfYear>(4).ToArray(),
                    DaysOfMonth  = new[]
                    {
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                        A.Dummy <int>().ThatIsInRange(0, 28),
                    }.Distinct().ToArray(),
                    Hour   = A.Dummy <int>().ThatIsInRange(0, 23),
                    Minute = A.Dummy <int>().ThatIsInRange(0, 59),
                };

                return(result);
            });
        }
Exemplo n.º 5
0
 public void MonthlySchedule_HourAndMinuteInRange_Valid()
 {
     var o = new MonthlyScheduleInUtc { Hour = 22, Minute = 23 };
     Assert.NotNull(o);
     o.ThrowIfInvalid();
 }
Exemplo n.º 6
0
 public void MonthlyScheduleInUtc_DefaultDay_IsOne()
 {
     var o = new MonthlyScheduleInUtc();
     Assert.Equal(1, o.DaysOfMonth.Single());
 }
        public void GetCronExpressionFromSchedule_Monthly_Works()
        {
            var schedule = new MonthlyScheduleInUtc { DaysOfMonth = new[] { 20 }, Hour = 22, Minute = 48 };
            var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule);
            Assert.Equal("48 22 20 * *", cron);

            var newSchedule = ScheduleCronExpressionConverter.FromCronExpression(cron);
            var newScheduleTyped = Assert.IsType<MonthlyScheduleInUtc>(newSchedule);
            Assert.Equal(schedule.GetType(), newScheduleTyped.GetType());
            Assert.Equal(schedule.DaysOfMonth.Single(), newScheduleTyped.DaysOfMonth.Single());
            Assert.Equal(schedule.Hour, newScheduleTyped.Hour);
            Assert.Equal(schedule.Minute, newScheduleTyped.Minute);
        }
 public void MontlyScheduleRoundTripDeserializesIntoBaseClass()
 {
     var schedule = new MonthlyScheduleInUtc { DaysOfMonth = new[] { 4 }, Hour = 4, Minute = 22 };
     var json = JsonConvert.SerializeObject(schedule);
     var newScheduleBase = JsonConvert.DeserializeObject<ScheduleBase>(json);
     var newScheduleTyped = Assert.IsType<MonthlyScheduleInUtc>(newScheduleBase);
     Assert.Equal(schedule.DaysOfMonth, newScheduleTyped.DaysOfMonth);
     Assert.Equal(schedule.Hour, newScheduleTyped.Hour);
     Assert.Equal(schedule.Minute, newScheduleTyped.Minute);
 }
Exemplo n.º 9
0
        public static void MonthlyScheduleInUtc_DefaultDay_IsOne()
        {
            var o = new MonthlyScheduleInUtc();

            Assert.Equal(1, o.DaysOfMonth.Single());
        }