Repository: flume Updated Branches: refs/heads/trunk 622faa6f8 -> f99adaabc
FLUME-2486. TestExecSource fails on some environments (Santiago M. Mola via Hari) Project: http://git-wip-us.apache.org/repos/asf/flume/repo Commit: http://git-wip-us.apache.org/repos/asf/flume/commit/f99adaab Tree: http://git-wip-us.apache.org/repos/asf/flume/tree/f99adaab Diff: http://git-wip-us.apache.org/repos/asf/flume/diff/f99adaab Branch: refs/heads/trunk Commit: f99adaabcf9d6c6b8f4c8fe5895fe478c8307694 Parents: 622faa6 Author: Hari Shreedharan <[email protected]> Authored: Wed Oct 15 23:16:15 2014 -0700 Committer: Hari Shreedharan <[email protected]> Committed: Wed Oct 15 23:16:15 2014 -0700 ---------------------------------------------------------------------- .../java/org/apache/flume/source/TestExecSource.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flume/blob/f99adaab/flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java ---------------------------------------------------------------------- diff --git a/flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java b/flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java index 289c2d2..afa93bf 100644 --- a/flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java +++ b/flume-ng-core/src/test/java/org/apache/flume/source/TestExecSource.java @@ -338,28 +338,24 @@ public class TestExecSource { context.put("command", command); Configurables.configure(source, context); source.start(); - File outputFile = File.createTempFile("flumeExecSourceTest_", ""); - FileOutputStream outputStream = new FileOutputStream(outputFile); - if(SystemUtils.IS_OS_WINDOWS) - Thread.sleep(2500); + // Some commands might take longer to complete, specially on Windows + // or on slow environments (e.g. Travis CI). + Thread.sleep(2500); Transaction transaction = channel.getTransaction(); transaction.begin(); try { + List<String> output = Lists.newArrayList(); Event event; while ((event = channel.take()) != null) { - outputStream.write(event.getBody()); - outputStream.write('\n'); + output.add(new String(event.getBody(), Charset.defaultCharset())); } - outputStream.close(); transaction.commit(); - List<String> output = Files.readLines(outputFile, Charset.defaultCharset()); // System.out.println("command : " + command); // System.out.println("output : "); // for( String line : output ) // System.out.println(line); Assert.assertArrayEquals(expectedOutput, output.toArray(new String[]{})); } finally { - FileUtils.forceDelete(outputFile); transaction.close(); source.stop(); }
