--- jsr166/src/test/tck/ExecutorCompletionServiceTest.java 2010/08/25 00:07:03 1.11 +++ jsr166/src/test/tck/ExecutorCompletionServiceTest.java 2010/08/25 01:44:48 1.12 @@ -149,70 +149,69 @@ public class ExecutorCompletionServiceTe joinPool(e); } } - /** - * Submitting to underlying AES that overrides newTaskFor(Callable) - * returns and eventually runs Future returned by newTaskFor. - */ - public void testNewTaskForCallable() throws InterruptedException { - final AtomicBoolean done = new AtomicBoolean(false); - class MyCallableFuture extends FutureTask { - MyCallableFuture(Callable c) { super(c); } - protected void done() { done.set(true); } - } - ExecutorService e = new ThreadPoolExecutor( + + /** + * Submitting to underlying AES that overrides newTaskFor(Callable) + * returns and eventually runs Future returned by newTaskFor. + */ + public void testNewTaskForCallable() throws InterruptedException { + final AtomicBoolean done = new AtomicBoolean(false); + class MyCallableFuture extends FutureTask { + MyCallableFuture(Callable c) { super(c); } + protected void done() { done.set(true); } + } + ExecutorService e = new ThreadPoolExecutor( 1, 1, 30L, TimeUnit.SECONDS, new ArrayBlockingQueue(1)) { - protected RunnableFuture newTaskFor(Callable c) { - return new MyCallableFuture(c); - } - }; - ExecutorCompletionService ecs = - new ExecutorCompletionService(e); - try { - assertNull(ecs.poll()); - Callable c = new StringTask(); - Future f1 = ecs.submit(c); - assertTrue("submit must return MyCallableFuture", - f1 instanceof MyCallableFuture); - Future f2 = ecs.take(); - assertSame("submit and take must return same objects", f1, f2); - assertTrue("completed task must have set done", done.get()); - } finally { - joinPool(e); - } - } + protected RunnableFuture newTaskFor(Callable c) { + return new MyCallableFuture(c); + }}; + ExecutorCompletionService ecs = + new ExecutorCompletionService(e); + try { + assertNull(ecs.poll()); + Callable c = new StringTask(); + Future f1 = ecs.submit(c); + assertTrue("submit must return MyCallableFuture", + f1 instanceof MyCallableFuture); + Future f2 = ecs.take(); + assertSame("submit and take must return same objects", f1, f2); + assertTrue("completed task must have set done", done.get()); + } finally { + joinPool(e); + } + } - /** - * Submitting to underlying AES that overrides newTaskFor(Runnable,T) - * returns and eventually runs Future returned by newTaskFor. - */ - public void testNewTaskForRunnable() throws InterruptedException { - final AtomicBoolean done = new AtomicBoolean(false); - class MyRunnableFuture extends FutureTask { - MyRunnableFuture(Runnable t, V r) { super(t, r); } - protected void done() { done.set(true); } - } - ExecutorService e = new ThreadPoolExecutor( + /** + * Submitting to underlying AES that overrides newTaskFor(Runnable,T) + * returns and eventually runs Future returned by newTaskFor. + */ + public void testNewTaskForRunnable() throws InterruptedException { + final AtomicBoolean done = new AtomicBoolean(false); + class MyRunnableFuture extends FutureTask { + MyRunnableFuture(Runnable t, V r) { super(t, r); } + protected void done() { done.set(true); } + } + ExecutorService e = new ThreadPoolExecutor( 1, 1, 30L, TimeUnit.SECONDS, new ArrayBlockingQueue(1)) { - protected RunnableFuture newTaskFor(Runnable t, T r) { - return new MyRunnableFuture(t, r); - } - }; - ExecutorCompletionService ecs = - new ExecutorCompletionService(e); - try { - assertNull(ecs.poll()); - Runnable r = new NoOpRunnable(); - Future f1 = ecs.submit(r, null); - assertTrue("submit must return MyRunnableFuture", - f1 instanceof MyRunnableFuture); - Future f2 = ecs.take(); - assertSame("submit and take must return same objects", f1, f2); - assertTrue("completed task must have set done", done.get()); - } finally { - joinPool(e); - } - } + protected RunnableFuture newTaskFor(Runnable t, T r) { + return new MyRunnableFuture(t, r); + }}; + ExecutorCompletionService ecs = + new ExecutorCompletionService(e); + try { + assertNull(ecs.poll()); + Runnable r = new NoOpRunnable(); + Future f1 = ecs.submit(r, null); + assertTrue("submit must return MyRunnableFuture", + f1 instanceof MyRunnableFuture); + Future f2 = ecs.take(); + assertSame("submit and take must return same objects", f1, f2); + assertTrue("completed task must have set done", done.get()); + } finally { + joinPool(e); + } + } }