IN PROGRESS - BATCH-827: Create Sample job for reading and writing headers and footers

This commit is contained in:
robokaso
2008-09-11 14:21:43 +00:00
parent df870a5df6
commit 2973139959
9 changed files with 212 additions and 19 deletions

View File

@@ -0,0 +1,40 @@
package org.springframework.batch.sample;
import java.io.BufferedReader;
import java.io.FileReader;
import static org.junit.Assert.*;
import org.junit.runner.RunWith;
import org.springframework.core.io.Resource;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
public class HeaderFooterSampleFunctionalTests extends AbstractValidatingBatchLauncherTests {
@Override
protected void validatePostConditions() throws Exception {
Resource input = (Resource) applicationContext.getBean("inputResource", Resource.class);
Resource output = (Resource) applicationContext.getBean("outputResource", Resource.class);
BufferedReader inputReader = new BufferedReader(new FileReader(input.getFile()));
BufferedReader outputReader = new BufferedReader(new FileReader(output.getFile()));
// skip initial comment from input file
inputReader.readLine();
String line;
int lineCount = 0;
while ((line = inputReader.readLine()) != null) {
lineCount++;
assertTrue("input line should correspond to output line", outputReader.readLine().contains(line));
}
// footer contains the item count
int itemCount = lineCount - 1; // minus 1 due to header line
assertTrue(outputReader.readLine().contains(String.valueOf(itemCount)));
}
}

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<import resource="classpath:/simple-job-launcher-context.xml" />
<import resource="classpath:/jobs/headerFooterSample.xml" />
</beans>