ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/CompletableFutureTest.java
(Generate patch)

Comparing jsr166/src/test/tck/CompletableFutureTest.java (file contents):
Revision 1.187 by jsr166, Mon Jul 3 21:18:37 2017 UTC vs.
Revision 1.188 by jsr166, Wed Aug 16 17:18:34 2017 UTC

# Line 59 | Line 59 | public class CompletableFutureTest exten
59      void checkIncomplete(CompletableFuture<?> f) {
60          assertFalse(f.isDone());
61          assertFalse(f.isCancelled());
62 <        assertTrue(f.toString().contains("Not completed"));
62 >        assertTrue(f.toString().matches(".*\\[.*Not completed.*\\]"));
63          try {
64              assertNull(f.getNow(null));
65          } catch (Throwable fail) { threadUnexpectedException(fail); }
# Line 82 | Line 82 | public class CompletableFutureTest exten
82          assertTrue(f.isDone());
83          assertFalse(f.isCancelled());
84          assertFalse(f.isCompletedExceptionally());
85 <        assertTrue(f.toString().contains("[Completed normally]"));
85 >        assertTrue(f.toString().matches(".*\\[.*Completed normally.*\\]"));
86      }
87  
88      /**
# Line 138 | Line 138 | public class CompletableFutureTest exten
138          assertFalse(f.isCancelled());
139          assertTrue(f.isDone());
140          assertTrue(f.isCompletedExceptionally());
141 <        assertTrue(f.toString().contains("[Completed exceptionally]"));
141 >        assertTrue(f.toString().matches(".*\\[.*Completed exceptionally.*\\]"));
142      }
143  
144      void checkCompletedWithWrappedCFException(CompletableFuture<?> f) {
# Line 193 | Line 193 | public class CompletableFutureTest exten
193          assertTrue(f.isDone());
194          assertTrue(f.isCompletedExceptionally());
195          assertTrue(f.isCancelled());
196 <        assertTrue(f.toString().contains("[Completed exceptionally]"));
196 >        assertTrue(f.toString().matches(".*\\[.*Completed exceptionally.*\\]"));
197      }
198  
199      /**
# Line 329 | Line 329 | public class CompletableFutureTest exten
329      /**
330       * toString indicates current completion state
331       */
332 <    public void testToString() {
333 <        CompletableFuture<String> f;
334 <
335 <        f = new CompletableFuture<String>();
336 <        assertTrue(f.toString().contains("[Not completed]"));
332 >    public void testToString_incomplete() {
333 >        CompletableFuture<String> f = new CompletableFuture<String>();
334 >        assertTrue(f.toString().matches(".*\\[.*Not completed.*\\]"));
335 >        if (testImplementationDetails)
336 >            assertEquals(identityString(f) + "[Not completed]",
337 >                         f.toString());
338 >    }
339  
340 +    public void testToString_normal() {
341 +        CompletableFuture<String> f = new CompletableFuture<String>();
342          assertTrue(f.complete("foo"));
343 <        assertTrue(f.toString().contains("[Completed normally]"));
343 >        assertTrue(f.toString().matches(".*\\[.*Completed normally.*\\]"));
344 >        if (testImplementationDetails)
345 >            assertEquals(identityString(f) + "[Completed normally]",
346 >                         f.toString());
347 >    }
348  
349 <        f = new CompletableFuture<String>();
349 >    public void testToString_exception() {
350 >        CompletableFuture<String> f = new CompletableFuture<String>();
351          assertTrue(f.completeExceptionally(new IndexOutOfBoundsException()));
352 <        assertTrue(f.toString().contains("[Completed exceptionally]"));
352 >        assertTrue(f.toString().matches(".*\\[.*Completed exceptionally.*\\]"));
353 >        if (testImplementationDetails)
354 >            assertTrue(f.toString().startsWith(
355 >                               identityString(f) + "[Completed exceptionally: "));
356 >    }
357  
358 +    public void testToString_cancelled() {
359          for (boolean mayInterruptIfRunning : new boolean[] { true, false }) {
360 <            f = new CompletableFuture<String>();
360 >            CompletableFuture<String> f = new CompletableFuture<String>();
361              assertTrue(f.cancel(mayInterruptIfRunning));
362 <            assertTrue(f.toString().contains("[Completed exceptionally]"));
362 >            assertTrue(f.toString().matches(".*\\[.*Completed exceptionally.*\\]"));
363 >            if (testImplementationDetails)
364 >                assertTrue(f.toString().startsWith(
365 >                                   identityString(f) + "[Completed exceptionally: "));
366          }
367      }
368  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines