public async Task ItExecutesARecurringTaskAtTheSpecifiedInterval() { Func <string, TaskScheduler, Task> configureSchedulerAction = async(semaphoreFile, taskScheduler) => { await taskScheduler.AddRecurringTask(() => TaskQueueTestFixture.WriteSemaphore(semaphoreFile), TimeSpan.FromSeconds(IntervalSeconds), RandomTaskName); }; await TaskSchedulerTestHelpers.AssertTaskSchedulerWritesSemaphoreTwice( IntervalSeconds, configureSchedulerAction); }
public async Task ItExecutesARecurringTaskAtTheSpecifiedCrontabInterval() { Func <string, TaskScheduler, Task> configureSchedulerAction = async(semaphoreFile, taskScheduler) => { var crontab = $"*/{IntervalSeconds} * * * * *"; TaskSchedulerTestHelpers.SynchronizeToCrontabNextStart(crontab); Thread.Sleep(10); await taskScheduler.AddRecurringTask(() => TaskQueueTestFixture.WriteSemaphore(semaphoreFile), crontab, RandomTaskName); }; await TaskSchedulerTestHelpers.AssertTaskSchedulerWritesSemaphoreTwice(IntervalSeconds, configureSchedulerAction); }