public void GetJobParametersTest() { DefaultJobParametersConverter converter = new DefaultJobParametersConverter(); NameValueCollection props2 = new NameValueCollection { { "+dateDebut(date)", "1970/07/31" }, { "+everything(long)", "42" }, { "-balance(double)", "1000.0" }, { "+name(string)", "thierry" }, { "-default", "default" }, { "unmarked", "unmarked" } }; JobParameters jobParameters2 = converter.GetJobParameters(props2); Assert.IsNotNull(jobParameters2); Assert.AreEqual(6, jobParameters2.GetParameters().Count); IDictionary <string, JobParameter> dico = jobParameters2.GetParameters(); foreach (KeyValuePair <string, JobParameter> entry in dico) { string key = entry.Key; JobParameter value = entry.Value; Assert.IsFalse(key.StartsWith("-")); if ("dateDebut".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.Date, value.Type); Assert.IsTrue(value.Identifying); } if ("everything".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.Long, value.Type); Assert.IsTrue(value.Identifying); } if ("balance".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.Double, value.Type); Assert.IsFalse(value.Identifying); } if ("name".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.String, value.Type); Assert.IsTrue(value.Identifying); } if ("default".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.String, value.Type); Assert.IsFalse(value.Identifying); } if ("unmarked".Equals(key)) { Assert.AreEqual(JobParameter.ParameterType.String, value.Type); Assert.IsTrue(value.Identifying); } } }
public void RunTestSystemCommandTasklet() { SimpleJobLauncher launcher = new SimpleJobLauncher(); IJobInstanceDao jobInstanceDao = new MapJobInstanceDao(); IJobExecutionDao jobExecutionDao = new MapJobExecutionDao(); IStepExecutionDao stepExecutionDao = new MapStepExecutionDao(); IExecutionContextDao executionContextDao = new MapExecutionContextDao(); IJobRepository jobRepository = new SimpleJobRepository(jobInstanceDao, jobExecutionDao, stepExecutionDao, executionContextDao); launcher.JobRepository = jobRepository; DefaultJobParametersConverter converter = new DefaultJobParametersConverter(); NameValueCollection props2 = new NameValueCollection { { "+dateDebut(date)", "1970/07/31" }, { "+everything(long)", "42" }, { "-balance(double)", "1000.0" }, { "+name(string)", "thierry" }, { "-default", "default" } }; JobParameters jobParameters = converter.GetJobParameters(props2); IJob job = new SimpleJob("myTestJob"); job.JobParametersValidator = new DummyValidator(); job.Restartable = false; TaskletStep step = new TaskletStep("simpleTS") { JobRepository = jobRepository }; SystemCommandTasklet tasklet = new SystemCommandTasklet { Command = "DEL MyDummyTasklet2_out_*.txt", WorkingDirectory = "C:/temp", Timeout = 10000000, SystemProcessExitCodeMapper = new SimpleSystemProcessExitCodeMapper() }; step.Tasklet = tasklet; step.RegisterStepExecutionListener(tasklet); ((SimpleJob)job).AddStep(step); ((SimpleJob)job).JobRepository = jobRepository; ITaskExecutor taskExecutor = new SimpleAsyncTaskExecutor(); launcher.TaskExecutor = taskExecutor; JobExecution jobExecution = launcher.Run(job, jobParameters); //wait for execution end (asynchronous) Assert.IsFalse(jobExecution.Status.IsUnsuccessful()); Assert.IsFalse(jobExecution.Status.IsRunning()); }
public void RunTestASynchronousExecutor() { SimpleJobLauncher launcher = new SimpleJobLauncher(); IJobInstanceDao jobInstanceDao = new MapJobInstanceDao(); IJobExecutionDao jobExecutionDao = new MapJobExecutionDao(); IStepExecutionDao stepExecutionDao = new MapStepExecutionDao(); IExecutionContextDao executionContextDao = new MapExecutionContextDao(); IJobRepository jobRepository = new SimpleJobRepository(jobInstanceDao, jobExecutionDao, stepExecutionDao, executionContextDao); launcher.JobRepository = jobRepository; DefaultJobParametersConverter converter = new DefaultJobParametersConverter(); NameValueCollection props2 = new NameValueCollection { { "+dateDebut(date)", "1970/07/31" }, { "+everything(long)", "42" }, { "-balance(double)", "1000.0" }, { "+name(string)", "thierry" }, { "-default", "default" } }; JobParameters jobParameters = converter.GetJobParameters(props2); IJob job = new SimpleJob("myTestJob"); job.JobParametersValidator = new DummyValidator(); job.Restartable = false; TaskletStep step = new TaskletStep("simpleTS") { JobRepository = jobRepository, Tasklet = new MyDummyTasklet2() }; ((SimpleJob)job).AddStep(step); ((SimpleJob)job).JobRepository = jobRepository; ITaskExecutor taskExecutor = new SimpleAsyncTaskExecutor(); launcher.TaskExecutor = taskExecutor; JobExecution jobExecution = launcher.Run(job, jobParameters); //wait for execution end (asynchronous) Assert.IsFalse(jobExecution.Status.IsUnsuccessful()); Assert.IsFalse(jobExecution.Status.IsRunning()); }
public void GetPropertiesTest() { //OrderedDictionary<string, JobParameter> myJobP = new OrderedDictionary<string, JobParameter> IDictionary <string, JobParameter> myJobP = new Dictionary <string, JobParameter> { { "p1", new JobParameter("param1") }, { "p2", new JobParameter(2) }, { "p3", new JobParameter(3.0) }, { "p4", new JobParameter(DateTime.Parse("1970-07-31")) } }; JobParameters jp = new JobParameters(myJobP); DefaultJobParametersConverter converter = new DefaultJobParametersConverter(); NameValueCollection props = converter.GetProperties(jp); Assert.IsNotNull(props); Assert.AreEqual(4, props.Count); foreach (string key in props.Keys) { string value = props[key]; Assert.IsNotNull(value); if (key.Contains("p1")) { Assert.AreEqual("p1", key); } if (key.Contains("p2")) { Assert.AreEqual("p2(long)", key); } if (key.Contains("p3")) { Assert.AreEqual("p3(double)", key); } if (key.Contains("p4")) { Assert.AreEqual("p4(date)", key); } } }