41 |
|
import java.util.function.Predicate; |
42 |
|
import java.util.function.Supplier; |
43 |
|
|
44 |
– |
import junit.framework.AssertionFailedError; |
44 |
|
import junit.framework.Test; |
45 |
|
import junit.framework.TestSuite; |
46 |
|
|
59 |
|
assertFalse(f.isDone()); |
60 |
|
assertFalse(f.isCancelled()); |
61 |
|
assertTrue(f.toString().matches(".*\\[.*Not completed.*\\]")); |
62 |
+ |
|
63 |
+ |
Object result = null; |
64 |
|
try { |
65 |
< |
assertNull(f.getNow(null)); |
65 |
> |
result = f.getNow(null); |
66 |
|
} catch (Throwable fail) { threadUnexpectedException(fail); } |
67 |
+ |
assertNull(result); |
68 |
+ |
|
69 |
|
try { |
70 |
|
f.get(randomExpiredTimeout(), randomTimeUnit()); |
71 |
|
shouldThrow(); |
74 |
|
catch (Throwable fail) { threadUnexpectedException(fail); } |
75 |
|
} |
76 |
|
|
77 |
< |
<T> void checkCompletedNormally(CompletableFuture<T> f, T value) { |
78 |
< |
checkTimedGet(f, value); |
77 |
> |
<T> void checkCompletedNormally(CompletableFuture<T> f, T expectedValue) { |
78 |
> |
checkTimedGet(f, expectedValue); |
79 |
> |
|
80 |
> |
assertEquals(expectedValue, f.join()); |
81 |
> |
assertEquals(expectedValue, f.getNow(null)); |
82 |
|
|
83 |
+ |
T result = null; |
84 |
|
try { |
85 |
< |
assertEquals(value, f.join()); |
79 |
< |
assertEquals(value, f.getNow(null)); |
80 |
< |
assertEquals(value, f.get()); |
85 |
> |
result = f.get(); |
86 |
|
} catch (Throwable fail) { threadUnexpectedException(fail); } |
87 |
+ |
assertEquals(expectedValue, result); |
88 |
+ |
|
89 |
|
assertTrue(f.isDone()); |
90 |
|
assertFalse(f.isCancelled()); |
91 |
|
assertFalse(f.isCompletedExceptionally()); |
299 |
|
} |
300 |
|
|
301 |
|
f = new CompletableFuture<>(); |
302 |
< |
f.completeExceptionally(ex = new CFException()); |
302 |
> |
f.completeExceptionally(new CFException()); |
303 |
|
f.obtrudeValue(v1); |
304 |
|
checkCompletedNormally(f, v1); |
305 |
|
f.obtrudeException(ex = new CFException()); |
4197 |
|
static void assertZero(CompletableFuture<?> f) { |
4198 |
|
try { |
4199 |
|
f.getNow(null); |
4200 |
< |
throw new AssertionFailedError("should throw"); |
4200 |
> |
throw new AssertionError("should throw"); |
4201 |
|
} catch (CompletionException success) { |
4202 |
|
assertTrue(success.getCause() instanceof ZeroException); |
4203 |
|
} |
4396 |
|
f.complete(null); |
4397 |
|
|
4398 |
|
f = new CompletableFuture<>(); |
4399 |
< |
CompletableFuture.anyOf(new CompletableFuture<?>[] { f, incomplete }); |
4399 |
> |
CompletableFuture.anyOf(f, incomplete); |
4400 |
|
f.complete(null); |
4401 |
|
} |
4402 |
|
|
4414 |
|
f.complete(null); |
4415 |
|
|
4416 |
|
f = new CompletableFuture<>(); |
4417 |
< |
CompletableFuture.anyOf(new CompletableFuture<?>[] { incomplete, f }); |
4417 |
> |
CompletableFuture.anyOf(incomplete, f); |
4418 |
|
f.complete(null); |
4419 |
|
} |
4420 |
|
} |