Пример #1
0
        public async Task TestSchedulerWithSpringObjectJobFactoryAndQuartzJobObject()
        {
            DummyJobObject.param = 0;
            DummyJobObject.count = 0;

            JobDetailImpl jobDetail = new JobDetailImpl();

            jobDetail.JobType = typeof(DummyJobObject);
            jobDetail.Name    = "myJob";
            jobDetail.JobDataMap.Add("param", "10");

            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.JobFactory = new SpringObjectJobFactory();
            factoryObject.Triggers   = new ITrigger[] { trigger };
            factoryObject.JobDetails = new IJobDetail[] { jobDetail };
            factoryObject.AfterPropertiesSet();
            await factoryObject.Start();

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

            Assert.AreEqual(10, DummyJobObject.param);
            Assert.IsTrue(DummyJobObject.count > 0);

            factoryObject.Dispose();
        }
Пример #2
0
        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();
        }
Пример #3
0
        public async Task TestSchedulerWithRunnable()
        {
            DummyRunnable.count = 0;

            JobDetailImpl jobDetail = new JobDetailObject();

            jobDetail.JobType = typeof(DummyRunnable);
            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.Triggers   = new ITrigger[] { trigger };
            factoryObject.JobDetails = new IJobDetail[] { jobDetail };
            factoryObject.AfterPropertiesSet();
            await factoryObject.Start();

            DummyRunnable.runEvent.WaitOne(1000);
            Assert.IsTrue(DummyRunnable.count > 0);

            factoryObject.Dispose();
        }
Пример #4
0
        public void TestSchedulerWithSpringObjectJobFactoryAndRunnable()
        {
            DummyRunnable.param = 0;
            DummyRunnable.count = 0;

            JobDetailObject jobDetail = new JobDetailObject();

            jobDetail.JobType = typeof(DummyRunnable);
            jobDetail.Name    = ("myJob");
            jobDetail.JobDataMap.Add("param", "10");

            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.JobFactory = (new SpringObjectJobFactory());
            factoryObject.Triggers   = (new ITrigger[] { trigger });
            factoryObject.JobDetails = (new IJobDetail[] { jobDetail });
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.AreEqual(10, DummyRunnable.param);
            Assert.IsTrue(DummyRunnable.count > 0);

            factoryObject.Dispose();
        }
Пример #5
0
        public void TestSchedulerWithRunnable()
        {
            DummyRunnable.count = 0;

            JobDetail jobDetail = new JobDetailObject();

            jobDetail.JobType = typeof(DummyRunnable);
            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.Triggers   = (new Trigger[] { trigger });
            factoryObject.JobDetails = (new JobDetail[] { jobDetail });
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.IsTrue(DummyRunnable.count > 0);

            factoryObject.Dispose();
        }
Пример #6
0
        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();
        }
Пример #7
0
        public void TestSchedulerWithQuartzJobObject()
        {
            DummyJob.param = 0;
            DummyJob.count = 0;

            JobDetailImpl jobDetail = new JobDetailImpl();

            jobDetail.JobType = typeof(DummyJobObject);
            jobDetail.Name    = "myJob";
            jobDetail.JobDataMap.Put("param", "10");

            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.Triggers   = new ITrigger[] { trigger };
            factoryObject.JobDetails = new IJobDetail[] { jobDetail };
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.AreEqual(10, DummyJobObject.param);
            Assert.IsTrue(DummyJobObject.count > 0);

            factoryObject.Dispose();
        }
Пример #8
0
        public void TestStart()
        {
            factory.SchedulerFactoryType = typeof(TestSchedulerFactory);
            factory.AutoStartup          = false;
            factory.AfterPropertiesSet();
            factory.Start();

            TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.JobFactory = Arg <IJobFactory> .Is.NotNull);
            TestSchedulerFactory.MockScheduler.AssertWasCalled(x => x.Start());
        }
        public void TestStart()
        {
            // set expectations
            TestSchedulerFactory.MockScheduler.JobFactory = null;
            LastCall.IgnoreArguments();
            TestSchedulerFactory.MockScheduler.Start();
            TestSchedulerFactory.Mockery.ReplayAll();

            factory.SchedulerFactoryType = typeof(TestSchedulerFactory);
            factory.AutoStartup          = false;
            factory.AfterPropertiesSet();
            factory.Start();
        }
Пример #10
0
        public async Task TestStart()
        {
            factory.SchedulerFactoryType = typeof(TestSchedulerFactory);
            factory.AutoStartup          = false;
            factory.AfterPropertiesSet();
            await factory.Start();

            A.CallTo(TestSchedulerFactory.MockScheduler)
            .Where(x => x.Method.Name.Equals("set_JobFactory"))
            .WhenArgumentsMatch(x => x.Get <IJobFactory>(0) != null)
            .MustHaveHappened();

            A.CallTo(() => TestSchedulerFactory.MockScheduler.Start(A <CancellationToken> ._)).MustHaveHappened();
        }
Пример #11
0
        public async Task TestSchedulerWithSpringObjectJobFactoryAndJobSchedulingData()
        {
            DummyJob.param = 0;
            DummyJob.count = 0;

            SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();

            factoryObject.JobFactory = new SpringObjectJobFactory();
            factoryObject.JobSchedulingDataLocation = "job-scheduling-data.xml";
            // TODO bean.ResourceLoader = (new FileSystemResourceLoader());
            factoryObject.AfterPropertiesSet();
            await factoryObject.Start();

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

            factoryObject.Dispose();
        }
Пример #12
0
        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();
        }
Пример #13
0
        public void TestSchedulerWithSpringObjectJobFactoryAndRunnable()
        {
            DummyRunnable.param = 0;
            DummyRunnable.count = 0;

            JobDetail jobDetail = new JobDetailObject();
            jobDetail.JobType = typeof (DummyRunnable);
            jobDetail.Name = ("myJob");
            jobDetail.JobDataMap.Add("param", "10");

            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.JobFactory = (new SpringObjectJobFactory());
            factoryObject.Triggers = (new Trigger[] {trigger});
            factoryObject.JobDetails = (new JobDetail[] {jobDetail});
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            Thread.Sleep(500);
            Assert.AreEqual(10, DummyRunnable.param);
            Assert.IsTrue(DummyRunnable.count > 0);

            factoryObject.Dispose();
        }
Пример #14
0
        public void TestSchedulerWithSpringObjectJobFactoryAndJobSchedulingData()
        {
            DummyJob.param = 0;
            DummyJob.count = 0;

            SchedulerFactoryObject factoryObject = new SchedulerFactoryObject();
            factoryObject.JobFactory = new SpringObjectJobFactory();
            factoryObject.JobSchedulingDataLocation = "job-scheduling-data.xml";
            // TODO bean.ResourceLoader = (new FileSystemResourceLoader());
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

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

            factoryObject.Dispose();
        }
Пример #15
0
        public void TestSchedulerWithRunnable()
        {
            DummyRunnable.count = 0;

            JobDetail jobDetail = new JobDetailObject();
            jobDetail.JobType = typeof (DummyRunnable);
            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.Triggers = new Trigger[] {trigger};
            factoryObject.JobDetails = new JobDetail[] {jobDetail};
            factoryObject.AfterPropertiesSet();
            factoryObject.Start();

            DummyRunnable.runEvent.WaitOne(500);
            Assert.IsTrue(DummyRunnable.count > 0);

            factoryObject.Dispose();
        }