public void ExpressionScheduleRoundTripDeserializesIntoBaseClass() { var schedule = new ExpressionSchedule { CronExpression = "* * * * *" }; var json = JsonConvert.SerializeObject(schedule); var newScheduleBase = JsonConvert.DeserializeObject<ScheduleBase>(json); var newScheduleTyped = Assert.IsType<ExpressionSchedule>(newScheduleBase); Assert.Equal(schedule.CronExpression, newScheduleTyped.CronExpression); }
public void GetCronExpressionFromSchedule_ExpressionClone_Works() { var schedule = new ExpressionSchedule { CronExpression = "* * * * *" }; var cloned = schedule.Clone(); var clonedTyped = Assert.IsType<ExpressionSchedule>(cloned); Assert.Equal(schedule.GetType(), clonedTyped.GetType()); Assert.Equal(schedule.CronExpression, clonedTyped.CronExpression); Assert.NotSame(schedule, clonedTyped); }
public void GetCronExpressionFromScheduleInterval_Expression_Works() { var schedule = new ExpressionSchedule { CronExpression = "*/2 * * * *" }; var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule); Assert.Equal("*/2 * * * *", cron); var newSchedule = ScheduleCronExpressionConverter.FromCronExpression(cron); var newScheduleTyped = Assert.IsType<IntervalSchedule>(newSchedule); Assert.Equal(typeof(IntervalSchedule), newScheduleTyped.GetType()); Assert.Equal(2, newScheduleTyped.Interval.TotalMinutes); }
public void ExpressionScheduleRoundtripWillDeserializeIntoBaseClass() { var schedule = new ExpressionSchedule { CronExpression = "* * * * *" }; var json = this.bsonSerializer.SerializeToString(schedule); var newScheduleBase = this.bsonSerializer.Deserialize <ScheduleBase>(json); var newScheduleTyped = Assert.IsType <ExpressionSchedule>(newScheduleBase); Assert.Equal(schedule.CronExpression, newScheduleTyped.CronExpression); Assert.Equal(schedule, newScheduleTyped); }
public static void GetCronExpressionFromScheduleInterval_Expression_Works() { var schedule = new ExpressionSchedule { CronExpression = "*/2 * * * *" }; var cron = ScheduleCronExpressionConverter.ToCronExpression(schedule); Assert.Equal("*/2 * * * *", cron); var newSchedule = ScheduleCronExpressionConverter.FromCronExpression(cron); var newScheduleTyped = Assert.IsType <IntervalSchedule>(newSchedule); Assert.Equal(typeof(IntervalSchedule), newScheduleTyped.GetType()); Assert.Equal(2, newScheduleTyped.Interval.TotalMinutes); }
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); }); }