示例#1
0
        public void JobBeExecuted_ForValidJob_WillLogCorrectly()
        {
            JobKey jobA = new JobKey("JobA");

            _jobDetail.Expect(j => j.Key).Return(jobA);
            _context.Expect(c => c.JobDetail).Return(_jobDetail);

            _listener.JobToBeExecuted(_context);

            _testLogger.AssertInfoMessagesLogged($"-----About to run '{_context.JobDetail.Key}'");
        }
        public void JobWasExecuted_ForOnCompletionTriggerAndCompletedState_WillTriggerNextJob(JobExecutionStatus status)
        {
            JobKey jobA = new JobKey("JobA");
            JobKey jobB = new JobKey("JobB");

            _jobDetail.Expect(j => j.Key).Return(jobA);
            _context.Expect(c => c.JobDetail).Return(_jobDetail);
            _context.Expect(c => c.Result).Return(status);
            _context.Scheduler.Expect(s => s.TriggerJob(jobB));

            _listener.AddJobChainLink(jobA, JobResultCriteria.OnCompletion, jobB);
            _listener.JobWasExecuted(_context, null);

            _testLogger.AssertInfoMessagesLogged($"Completion of Job 'DEFAULT.{jobA.Name}' will now trigger Job 'DEFAULT.{jobB.Name}'");
        }