Example #1
0
        public async Task AddSchedulerJobShouldCallScheduleJobOnScheduler()
        {
            IScheduler        scheduler         = A.Fake <IScheduler>();
            CancellationToken cancellationToken = default(CancellationToken);

            string validCronSchedule = "0 0/20 * 1/1 * ? *";
            ScheduledJobSetting scheduledJobSetting = new ScheduledJobSetting()
            {
                CronExpression = validCronSchedule
            };

            var        configurator = new DeleteExpiredTokensSchedulerConfigurator();
            IJobDetail jobDetail    = configurator.BuildJobDetail(scheduledJobSetting);
            ITrigger   trigger      = configurator.BuildTrigger(scheduledJobSetting);

            await configurator.AddScheduledJob(scheduler, scheduledJobSetting, cancellationToken);

            A.CallTo(
                () => scheduler.ScheduleJob(jobDetail, trigger, cancellationToken)).MustHaveHappened();
        }