From 04019fc8e6d1bffc862ba729f9e52b1e77d0165d Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Fri, 13 May 2011 10:08:45 +0100 Subject: [PATCH] Add unit test for append on restart --- .../item/file/FlatFileItemWriterTests.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/file/FlatFileItemWriterTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/file/FlatFileItemWriterTests.java index dbc3b238d..98b0611f9 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/file/FlatFileItemWriterTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/file/FlatFileItemWriterTests.java @@ -153,6 +153,33 @@ public class FlatFileItemWriterTests { assertEquals("test2", readLine()); } + @Test + public void testWriteWithAppendRestartOnSecondChunk() throws Exception { + writer.setAppendAllowed(true); + writer.open(executionContext); + writer.write(Collections.singletonList("test1")); + writer.close(); + assertEquals("test1", readLine()); + reader = null; + writer.open(executionContext); + writer.write(Collections.singletonList(TEST_STRING)); + writer.update(executionContext); + writer.write(Collections.singletonList(TEST_STRING)); + writer.close(); + assertEquals("test1", readLine()); + assertEquals(TEST_STRING, readLine()); + assertEquals(TEST_STRING, readLine()); + assertEquals(null, readLine()); + writer.open(executionContext); + writer.write(Collections.singletonList(TEST_STRING)); + writer.close(); + reader = null; + assertEquals("test1", readLine()); + assertEquals(TEST_STRING, readLine()); + assertEquals(TEST_STRING, readLine()); + assertEquals(null, readLine()); + } + @Test public void testOpenTwice() { // opening the writer twice should cause no issues