public static void WeeklySchedule_HourAndMinuteInRange_Valid() { var o = new WeeklyScheduleInUtc { Hour = 22, Minute = 23 }; Assert.NotNull(o); o.ThrowIfInvalid(); }
public void WeeklyScheduleRoundtripWillDeserializeIntoBaseClass() { var schedule = new WeeklyScheduleInUtc { DaysOfWeek = new[] { DayOfWeek.Tuesday }, Hour = 4, Minute = 22 }; var json = this.bsonSerializer.SerializeToString(schedule); var newScheduleBase = this.bsonSerializer.Deserialize <ScheduleBase>(json); var newScheduleTyped = Assert.IsType <WeeklyScheduleInUtc>(newScheduleBase); Assert.Equal(schedule.DaysOfWeek, newScheduleTyped.DaysOfWeek); Assert.Equal(schedule.Hour, newScheduleTyped.Hour); Assert.Equal(schedule.Minute, newScheduleTyped.Minute); Assert.Equal(schedule, newScheduleTyped); }
public static void GetCronExpressionFromSchedule_Weekly_Works() { var schedule = new WeeklyScheduleInUtc() { DaysOfWeek = new[] { DayOfWeek.Thursday }, Hour = 21, Minute = 17, }; var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule); Assert.Equal("17 21 * * 4", cron); var newSchedule = ScheduleCronExpressionConverter.FromCronExpression(cron); var newScheduleTyped = Assert.IsType <WeeklyScheduleInUtc>(newSchedule); Assert.Equal(schedule.GetType(), newScheduleTyped.GetType()); Assert.Equal(schedule.DaysOfWeek.Single(), newScheduleTyped.DaysOfWeek.Single()); Assert.Equal(schedule.Hour, newScheduleTyped.Hour); Assert.Equal(schedule.Minute, newScheduleTyped.Minute); }
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); }); }
public void WeeklySchedule_HourAndMinuteInRange_Valid() { var o = new WeeklyScheduleInUtc { Hour = 22, Minute = 23 }; Assert.NotNull(o); o.ThrowIfInvalid(); }
public void WeeklyScheduleInUtc_DefaultDayOfWeek_IsSunday() { var o = new WeeklyScheduleInUtc(); Assert.Equal(DayOfWeek.Sunday, o.DaysOfWeek.Single()); }
public void GetCronExpressionFromSchedule_WeeklyMultipleDays_Works() { var schedule = new WeeklyScheduleInUtc() { DaysOfWeek = new[] { DayOfWeek.Tuesday, DayOfWeek.Thursday }, Hour = 21, Minute = 17 }; var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule); Assert.Equal("17 21 * * 2,4", cron); var newSchedule = ScheduleCronExpressionConverter.FromCronExpression(cron); var newScheduleTyped = Assert.IsType<WeeklyScheduleInUtc>(newSchedule); Assert.Equal(schedule.GetType(), newScheduleTyped.GetType()); Assert.Equal(schedule.DaysOfWeek.First(), newScheduleTyped.DaysOfWeek.First()); Assert.Equal(schedule.DaysOfWeek.Skip(1).First(), newScheduleTyped.DaysOfWeek.Skip(1).First()); Assert.Equal(schedule.Hour, newScheduleTyped.Hour); Assert.Equal(schedule.Minute, newScheduleTyped.Minute); }
public void WeeklyScheduleRoundTripDeserializesIntoBaseClass() { var schedule = new WeeklyScheduleInUtc { DaysOfWeek = new[] { DayOfWeek.Tuesday }, Hour = 4, Minute = 22 }; var json = JsonConvert.SerializeObject(schedule); var newScheduleBase = JsonConvert.DeserializeObject<ScheduleBase>(json); var newScheduleTyped = Assert.IsType<WeeklyScheduleInUtc>(newScheduleBase); Assert.Equal(schedule.DaysOfWeek, newScheduleTyped.DaysOfWeek); Assert.Equal(schedule.Hour, newScheduleTyped.Hour); Assert.Equal(schedule.Minute, newScheduleTyped.Minute); }
public static void WeeklyScheduleInUtc_DefaultDayOfWeek_IsSunday() { var o = new WeeklyScheduleInUtc(); Assert.Equal(DayOfWeek.Sunday, o.DaysOfWeek.Single()); }