Beispiel #1
0
        public void Execute_OnErrorExitCodeAndWithinRetryAttempts_WillSetupForRetry()
        {
            var context = GetJobContext();

            var exception = Assert.Throws <JobExecutionException>(() => _errorExitCodeJob.Execute(context));

            Assert.AreEqual(true, exception.RefireImmediately);
            Assert.AreEqual(JobExecutionStatus.Retrying, context.Result);
        }
Beispiel #2
0
        public void Execute_OnFailureToStartJob_WillLogError()
        {
            var context = GetJobContext();

            var    exception = Assert.Throws <JobExecutionException>(() => _failJob.Execute(context));
            string output    = context.ReadOutputBufferContents();

            Assert.That(output.Contains($"About to run {context.JobDetail.Key} at {DateTime.Now.ToString("dd/MM/yyyy")}"));
            Assert.That(output.Contains($"FileName: {_failJob.ExecutableName}, Parameters: {_failJob.Parameters}"));
            Assert.That(output.Contains("Error executing job - The system cannot find the file specified"));
        }
Beispiel #3
0
        public void Execute_WithValidParameters_WillRunJobAndWaitForCompletion()
        {
            var context = GetJobContext();

            _successJob.Execute(context);

            int processId = (int)context.Get(Constants.FieldNames.ProcessId);

            Assert.That(processId > 0);
            ArgumentException ex = Assert.Throws <ArgumentException>(() => System.Diagnostics.Process.GetProcessById(processId));

            Assert.AreEqual($"Process with an Id of {processId} is not running.", ex.Message);
            Assert.AreEqual(JobExecutionStatus.Succeeded, context.Result);
        }