From 00540cb5dfdda5dff20cb872d14533363d68a895 Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Thu, 16 Jul 2015 14:02:04 -0400 Subject: [PATCH] INT-3229: Fix WatchService Test JIRA: https://jira.spring.io/browse/INT-3229 --- .../file/WatchServiceDirectoryScannerTests.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/spring-integration-file/src/test/java/org/springframework/integration/file/WatchServiceDirectoryScannerTests.java b/spring-integration-file/src/test/java/org/springframework/integration/file/WatchServiceDirectoryScannerTests.java index d238bf511f..561955777e 100644 --- a/spring-integration-file/src/test/java/org/springframework/integration/file/WatchServiceDirectoryScannerTests.java +++ b/spring-integration-file/src/test/java/org/springframework/integration/file/WatchServiceDirectoryScannerTests.java @@ -21,6 +21,7 @@ import static org.junit.Assert.assertTrue; import java.io.File; import java.io.IOException; +import java.util.ArrayList; import java.util.List; import org.junit.Before; @@ -58,7 +59,7 @@ public class WatchServiceDirectoryScannerTests { } @Test - public void testInitial() throws Exception { + public void testInitialAndAddMore() throws Exception { WatchServiceDirectoryScanner scanner = new WatchServiceDirectoryScanner(folder.getRoot().getAbsolutePath()); scanner.start(); List files = scanner.listFiles(folder.getRoot()); @@ -74,15 +75,17 @@ public class WatchServiceDirectoryScannerTests { File baz1 = File.createTempFile("baz", ".txt", baz); files = scanner.listFiles(folder.getRoot()); int n = 0; - while (n++ < 200 && files.size() == 0) { + List accum = new ArrayList(files); + while (n++ < 300 && accum.size() != 4) { Thread.sleep(100); files = scanner.listFiles(folder.getRoot()); + accum.addAll(files); } - assertEquals(4, files.size()); - assertTrue(files.contains(top2)); - assertTrue(files.contains(foo2)); - assertTrue(files.contains(bar2)); - assertTrue(files.contains(baz1)); + assertEquals(4, accum.size()); + assertTrue(accum.contains(top2)); + assertTrue(accum.contains(foo2)); + assertTrue(accum.contains(bar2)); + assertTrue(accum.contains(baz1)); scanner.stop(); }