public void TaskSchedulerTest() { AppSettings conf = new AppSettings(); conf.Hourpattern = "*"; conf.Minutepattern = "00,30"; Schedule schedule = new Schedule(conf); Win32ScheduleInstaller uut = new Win32ScheduleInstaller(schedule); uut.deleteTaskAndTriggers(); using (TaskService ts = new TaskService()) { Assert.IsNull(ts.GetTask("BBCIngest")); } uut.installTask(@"C:\WINDOWS\system32\cmd.exe", ""); using (TaskService ts = new TaskService()) { Microsoft.Win32.TaskScheduler.Task t = ts.GetTask("BBCIngest"); Assert.IsNotNull(t); DateTime sod = DateTime.UtcNow.Date; // getruntimes is exclusive of the start time DateTime[] runtimes = t.GetRunTimes(sod.AddMilliseconds(-1), sod.AddMilliseconds(-1).AddDays(1)); Assert.AreEqual(48, runtimes.Length); DateTime[] events = schedule.events(sod); Assert.AreEqual(48, events.Length); for (int i = 0; i < 48; i++) { Assert.AreEqual(events[i], runtimes[i]); } } uut.deleteTaskAndTriggers(); using (TaskService ts = new TaskService()) { Assert.IsNull(ts.GetTask("BBCIngest")); } }
private void Fetch() { if (task == null) { listBox1.DataSource = null; } else { if (isTemp) { task.Enabled = true; } listBox1.DataSource = task.GetRunTimes(this.StartDate, this.EndDate); if (isTemp) { task.Enabled = false; } } }