public void TestSchedulerWithTaskExecutor()
        {
            CountingTaskExecutor taskExecutor = new CountingTaskExecutor();

            DummyJob.count = 0;

            JobDetailImpl jobDetail = new JobDetailImpl();

            jobDetail.JobType = typeof(DummyJob);
            jobDetail.Name    = ("myJob");

            SimpleTriggerObject trigger = new SimpleTriggerObject();

            trigger.Name           = ("myTrigger");
            trigger.JobDetail      = (jobDetail);
            trigger.StartDelay     = TimeSpan.FromMilliseconds(1);
            trigger.RepeatInterval = TimeSpan.FromMilliseconds(500);
            trigger.RepeatCount    = (1);
            trigger.AfterPropertiesSet();

            SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();

            factoryObject.TaskExecutor = (taskExecutor);
            factoryObject.Triggers     = (new ITrigger[] { trigger });
            factoryObject.JobDetails   = (new IJobDetail[] { jobDetail });
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.IsTrue(DummyJob.count > 0);
            Assert.AreEqual(DummyJob.count, taskExecutor.count);

            factoryObject.Dispose();
        }
        public async Task TestSchedulerWithTaskExecutor()
        {
            CountingTaskExecutor taskExecutor = new CountingTaskExecutor();

            DummyJob.count = 0;

            JobDetailImpl jobDetail = new JobDetailImpl();

            jobDetail.JobType = typeof(DummyJob);
            jobDetail.Name    = "myJob";

            SimpleTriggerObject trigger = new SimpleTriggerObject();

            trigger.Name           = "myTrigger";
            trigger.JobDetail      = jobDetail;
            trigger.StartDelay     = TimeSpan.FromMilliseconds(1);
            trigger.RepeatInterval = TimeSpan.FromMilliseconds(500);
            trigger.RepeatCount    = 1;
            trigger.AfterPropertiesSet();

            SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();

            factoryObject.TaskExecutor = taskExecutor;
            factoryObject.Triggers     = new ITrigger[] { trigger };
            factoryObject.JobDetails   = new IJobDetail[] { jobDetail };
            factoryObject.AfterPropertiesSet();
            await factoryObject.Start();

            await Task.Delay(TimeSpan.FromSeconds(1));

            Assert.IsTrue(DummyJob.count > 0);
            Assert.AreEqual(DummyJob.count, taskExecutor.count);

            factoryObject.Dispose();
        }
        public void TestSchedulerWithTaskExecutor()
        {
            CountingTaskExecutor taskExecutor = new CountingTaskExecutor();
            DummyJob.count = 0;

            JobDetail jobDetail = new JobDetail();
            jobDetail.JobType = typeof (DummyJob);
            ;
            jobDetail.Name = ("myJob");

            SimpleTriggerObject trigger = new SimpleTriggerObject();
            trigger.Name = ("myTrigger");
            trigger.JobDetail = (jobDetail);
            trigger.StartDelay = TimeSpan.FromMilliseconds(1);
            trigger.RepeatInterval = TimeSpan.FromMilliseconds(500);
            trigger.RepeatCount = (1);
            trigger.AfterPropertiesSet();

            SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
            factoryObject.TaskExecutor = (taskExecutor);
            factoryObject.Triggers = (new Trigger[] {trigger});
            factoryObject.JobDetails = (new JobDetail[] {jobDetail});
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.IsTrue(DummyJob.count > 0);
            Assert.AreEqual(DummyJob.count, taskExecutor.count);

            factoryObject.Dispose();
        }