JAMES-1945 CompletableFutureUtil::allOf should preserve order

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/f096bddf
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/f096bddf
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/f096bddf

Branch: refs/heads/master
Commit: f096bddfa198bb55c68f362a0a71094cc8db3c7d
Parents: 7d0fc2b
Author: Benoit Tellier <[email protected]>
Authored: Tue Feb 21 13:13:56 2017 +0700
Committer: Antoine Duprat <[email protected]>
Committed: Tue Feb 21 14:23:08 2017 +0100

----------------------------------------------------------------------
 .../james/util/CompletableFutureUtilTest.java   | 31 ++++++++++++++++++++
 1 file changed, 31 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/f096bddf/server/container/util-java8/src/test/java/org/apache/james/util/CompletableFutureUtilTest.java
----------------------------------------------------------------------
diff --git 
a/server/container/util-java8/src/test/java/org/apache/james/util/CompletableFutureUtilTest.java
 
b/server/container/util-java8/src/test/java/org/apache/james/util/CompletableFutureUtilTest.java
index 144cf42..55cef98 100644
--- 
a/server/container/util-java8/src/test/java/org/apache/james/util/CompletableFutureUtilTest.java
+++ 
b/server/container/util-java8/src/test/java/org/apache/james/util/CompletableFutureUtilTest.java
@@ -56,6 +56,37 @@ public class CompletableFutureUtilTest {
             .containsOnly(value1, value2, value3);
     }
 
+
+    @Test
+    public void allOfShouldPreserveOrder() {
+        long value1 = 18L;
+        long value2 = 19L;
+        long value3 = 20L;
+        long value4 = 21L;
+        long value5 = 22L;
+        long value6 = 23L;
+        long value7 = 24L;
+        long value8 = 25L;
+        long value9 = 26L;
+        long value10 = 27L;
+        assertThat(
+            CompletableFutureUtil.allOf(
+                Stream.of(
+                    CompletableFuture.completedFuture(value1),
+                    CompletableFuture.completedFuture(value2),
+                    CompletableFuture.completedFuture(value3),
+                    CompletableFuture.completedFuture(value4),
+                    CompletableFuture.completedFuture(value5),
+                    CompletableFuture.completedFuture(value6),
+                    CompletableFuture.completedFuture(value7),
+                    CompletableFuture.completedFuture(value8),
+                    CompletableFuture.completedFuture(value9),
+                    CompletableFuture.completedFuture(value10)))
+                .join()
+                .collect(Guavate.toImmutableList()))
+            .containsExactly(value1, value2, value3, value4, value5, value6, 
value7, value8, value9, value10);
+    }
+
     @Test
     public void allOfShouldWorkOnVeryLargeStream() {
         CompletableFutureUtil.allOf(


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to