Add getUniqueJobParametersBuilder() method in JobLauncherTestUtils
Issue #767
This commit is contained in:
committed by
Mahmoud Ben Hassine
parent
ac485ee326
commit
60bbc0052a
@@ -25,6 +25,7 @@ import org.junit.Test;
|
||||
import org.springframework.batch.core.BatchStatus;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.JobParameters;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.item.ExecutionContext;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
@@ -91,6 +92,10 @@ public abstract class AbstractIoSampleTests {
|
||||
return jobLauncherTestUtils.getUniqueJobParameters();
|
||||
}
|
||||
|
||||
protected JobParametersBuilder getUniqueJobParametersBuilder() {
|
||||
return jobLauncherTestUtils.getUniqueJobParametersBuilder();
|
||||
}
|
||||
|
||||
/**
|
||||
* Configure the reader to read outputs (if necessary). Required for
|
||||
* file-to-file jobs jobs, usually no-op for database jobs where inputs are
|
||||
|
||||
@@ -38,7 +38,7 @@ public class DelimitedFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected void pointReaderToOutput(ItemReader<CustomerCredit> reader) {
|
||||
JobParameters jobParameters = new JobParametersBuilder(super.getUniqueJobParameters()).addString("inputFile",
|
||||
JobParameters jobParameters = super.getUniqueJobParametersBuilder().addString("inputFile",
|
||||
"file:./build/test-outputs/delimitedOutput.csv").toJobParameters();
|
||||
StepExecution stepExecution = MetaDataInstanceFactory.createStepExecution(jobParameters);
|
||||
StepSynchronizationManager.close();
|
||||
@@ -47,7 +47,7 @@ public class DelimitedFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected JobParameters getUniqueJobParameters() {
|
||||
return new JobParametersBuilder(super.getUniqueJobParameters()).addString("inputFile",
|
||||
return super.getUniqueJobParametersBuilder().addString("inputFile",
|
||||
"data/iosample/input/delimited.csv").addString("outputFile",
|
||||
"file:./build/test-outputs/delimitedOutput.csv").toJobParameters();
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ public class FixedLengthFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected void pointReaderToOutput(ItemReader<CustomerCredit> reader) {
|
||||
JobParameters jobParameters = new JobParametersBuilder(super.getUniqueJobParameters()).addString("inputFile",
|
||||
JobParameters jobParameters = super.getUniqueJobParametersBuilder().addString("inputFile",
|
||||
"file:./build/test-outputs/fixedLengthOutput.txt").toJobParameters();
|
||||
StepExecution stepExecution = MetaDataInstanceFactory.createStepExecution(jobParameters);
|
||||
StepSynchronizationManager.close();
|
||||
@@ -42,7 +42,7 @@ public class FixedLengthFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected JobParameters getUniqueJobParameters() {
|
||||
return new JobParametersBuilder(super.getUniqueJobParameters()).addString("inputFile",
|
||||
return super.getUniqueJobParametersBuilder().addString("inputFile",
|
||||
"data/iosample/input/fixedLength.txt").addString("outputFile",
|
||||
"file:./build/test-outputs/fixedLengthOutput.txt").toJobParameters();
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ public class JdbcPagingFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected void pointReaderToOutput(ItemReader<CustomerCredit> reader) {
|
||||
JobParameters jobParameters = new JobParametersBuilder(super.getUniqueJobParameters()).addDouble("credit", 0.)
|
||||
JobParameters jobParameters = super.getUniqueJobParametersBuilder().addDouble("credit", 0.)
|
||||
.toJobParameters();
|
||||
StepExecution stepExecution = MetaDataInstanceFactory.createStepExecution(jobParameters);
|
||||
StepSynchronizationManager.close();
|
||||
@@ -47,7 +47,7 @@ public class JdbcPagingFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected JobParameters getUniqueJobParameters() {
|
||||
return new JobParametersBuilder(super.getUniqueJobParameters()).addDouble("credit", 10000.).toJobParameters();
|
||||
return super.getUniqueJobParametersBuilder().addDouble("credit", 10000.).toJobParameters();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ public class MultiResourceFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected void pointReaderToOutput(ItemReader<CustomerCredit> reader) {
|
||||
JobParameters jobParameters = new JobParametersBuilder(super.getUniqueJobParameters()).addString(
|
||||
JobParameters jobParameters = super.getUniqueJobParametersBuilder().addString(
|
||||
"input.file.path", "file:build/test-outputs/multiResourceOutput.csv.*").toJobParameters();
|
||||
StepExecution stepExecution = MetaDataInstanceFactory.createStepExecution(jobParameters);
|
||||
StepSynchronizationManager.close();
|
||||
@@ -46,7 +46,7 @@ public class MultiResourceFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected JobParameters getUniqueJobParameters() {
|
||||
JobParametersBuilder builder = new JobParametersBuilder(super.getUniqueJobParameters());
|
||||
JobParametersBuilder builder = super.getUniqueJobParametersBuilder();
|
||||
return builder.addString("input.file.path", "classpath:data/iosample/input/delimited*.csv").addString(
|
||||
"output.file.path", "file:build/test-outputs/multiResourceOutput.csv").toJobParameters();
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ public class RepositoryFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected void pointReaderToOutput(ItemReader<CustomerCredit> reader) {
|
||||
JobParameters jobParameters = new JobParametersBuilder(super.getUniqueJobParameters()).addDouble("credit", 0.)
|
||||
JobParameters jobParameters = super.getUniqueJobParametersBuilder().addDouble("credit", 0.)
|
||||
.toJobParameters();
|
||||
StepExecution stepExecution = MetaDataInstanceFactory.createStepExecution(jobParameters);
|
||||
StepSynchronizationManager.close();
|
||||
@@ -41,6 +41,6 @@ public class RepositoryFunctionalTests extends AbstractIoSampleTests {
|
||||
|
||||
@Override
|
||||
protected JobParameters getUniqueJobParameters() {
|
||||
return new JobParametersBuilder(super.getUniqueJobParameters()).addString("credit", "10000").toJobParameters();
|
||||
return super.getUniqueJobParametersBuilder().addString("credit", "10000").toJobParameters();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.springframework.batch.core.Job;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.JobParameter;
|
||||
import org.springframework.batch.core.JobParameters;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.Step;
|
||||
import org.springframework.batch.core.job.AbstractJob;
|
||||
import org.springframework.batch.core.job.SimpleJob;
|
||||
@@ -165,6 +166,14 @@ public class JobLauncherTestUtils {
|
||||
return new JobParameters(parameters);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new JobParametersBuilder object containing only a parameter for the
|
||||
* current timestamp, to ensure that the job instance will be unique.
|
||||
*/
|
||||
public JobParametersBuilder getUniqueJobParametersBuilder() {
|
||||
return new JobParametersBuilder(this.getUniqueJobParameters());
|
||||
}
|
||||
|
||||
/**
|
||||
* Convenient method for subclasses to grab a {@link StepRunner} for running
|
||||
* steps by name.
|
||||
|
||||
Reference in New Issue
Block a user