Repository: flume Updated Branches: refs/heads/flume-1.6 02973a98a -> 312fbb2b1
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/312fbb2b Tree: http://git-wip-us.apache.org/repos/asf/flume/tree/312fbb2b Diff: http://git-wip-us.apache.org/repos/asf/flume/diff/312fbb2b Branch: refs/heads/flume-1.6 Commit: 312fbb2b1f2ef81ceb8e3b8efe3cc16c5eb3ea99 Parents: 02973a9 Author: Hari Shreedharan <[email protected]> Authored: Wed Oct 15 23:16:15 2014 -0700 Committer: Hari Shreedharan <[email protected]> Committed: Wed Oct 15 23:17:21 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/312fbb2b/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(); }
