public class ThreadPoolExecutorTest extends JSR166TestCase
JSR166TestCase.AdjustablePolicy, JSR166TestCase.CallableOne, JSR166TestCase.CheckedBarrier, JSR166TestCase.CheckedCallable<T>, JSR166TestCase.CheckedInterruptedCallable<T>, JSR166TestCase.CheckedInterruptedRunnable, JSR166TestCase.CheckedRecursiveAction, JSR166TestCase.CheckedRecursiveTask<T>, JSR166TestCase.CheckedRunnable, JSR166TestCase.LongPossiblyInterruptedRunnable, JSR166TestCase.MediumInterruptedRunnable, JSR166TestCase.MediumPossiblyInterruptedRunnable, JSR166TestCase.MediumRunnable, JSR166TestCase.NoOpCallable, JSR166TestCase.NoOpREHandler, JSR166TestCase.NoOpRunnable, JSR166TestCase.NPETask, JSR166TestCase.RunnableShouldThrow, JSR166TestCase.ShortInterruptedRunnable, JSR166TestCase.ShortRunnable, JSR166TestCase.SimpleThreadFactory, JSR166TestCase.SmallCallable, JSR166TestCase.SmallPossiblyInterruptedRunnable, JSR166TestCase.SmallRunnable, JSR166TestCase.StringTask, JSR166TestCase.ThreadShouldThrow, JSR166TestCase.TrackedCallable, JSR166TestCase.TrackedLongRunnable, JSR166TestCase.TrackedMediumRunnable, JSR166TestCase.TrackedNoOpRunnable, JSR166TestCase.TrackedRunnable, JSR166TestCase.TrackedShortRunnable, JSR166TestCase.TrackedSmallRunnable
eight, expensiveTests, five, four, JAVA_CLASS_VERSION, JAVA_SPECIFICATION_VERSION, LONG_DELAY_MS, m1, m10, m2, m3, m4, m5, m6, MEDIUM_DELAY_MS, nine, one, seven, SHORT_DELAY_MS, six, SIZE, SMALL_DELAY_MS, TEST_STRING, testImplementationDetails, three, two, zero
Constructor and Description |
---|
ThreadPoolExecutorTest() |
Modifier and Type | Method and Description |
---|---|
void |
testAllowCoreThreadTimeOut_false()
allowCoreThreadTimeOut(false) causes idle threads not to time out
|
void |
testAllowCoreThreadTimeOut_true()
allowCoreThreadTimeOut(true) causes idle threads to time out
|
void |
testAllowsCoreThreadTimeOut()
allowsCoreThreadTimeOut is by default false.
|
void |
testAwaitTermination_timesOut()
awaitTermination on a non-shutdown pool times out
|
void |
testBeforeAfter()
beforeExecute and afterExecute are called when executing task
|
void |
testCallerRunsOnShutdown()
execute using CallerRunsPolicy drops task on shutdown
|
void |
testConstructor1()
Constructor throws if corePoolSize argument is less than zero
|
void |
testConstructor10()
Constructor throws if corePoolSize is greater than the maximumPoolSize
|
void |
testConstructor11()
Constructor throws if corePoolSize argument is less than zero
|
void |
testConstructor12()
Constructor throws if maximumPoolSize is less than zero
|
void |
testConstructor13()
Constructor throws if maximumPoolSize is equal to zero
|
void |
testConstructor14()
Constructor throws if keepAliveTime is less than zero
|
void |
testConstructor15()
Constructor throws if corePoolSize is greater than the maximumPoolSize
|
void |
testConstructor16()
Constructor throws if corePoolSize argument is less than zero
|
void |
testConstructor17()
Constructor throws if maximumPoolSize is less than zero
|
void |
testConstructor18()
Constructor throws if maximumPoolSize is equal to zero
|
void |
testConstructor19()
Constructor throws if keepAliveTime is less than zero
|
void |
testConstructor2()
Constructor throws if maximumPoolSize is less than zero
|
void |
testConstructor20()
Constructor throws if corePoolSize is greater than the maximumPoolSize
|
void |
testConstructor3()
Constructor throws if maximumPoolSize is equal to zero
|
void |
testConstructor4()
Constructor throws if keepAliveTime is less than zero
|
void |
testConstructor5()
Constructor throws if corePoolSize is greater than the maximumPoolSize
|
void |
testConstructor6()
Constructor throws if corePoolSize argument is less than zero
|
void |
testConstructor7()
Constructor throws if maximumPoolSize is less than zero
|
void |
testConstructor8()
Constructor throws if maximumPoolSize is equal to zero
|
void |
testConstructor9()
Constructor throws if keepAliveTime is less than zero
|
void |
testConstructorNullPointerException()
Constructor throws if workQueue is set to null
|
void |
testConstructorNullPointerException2()
Constructor throws if workQueue is set to null
|
void |
testConstructorNullPointerException3()
Constructor throws if threadFactory is set to null
|
void |
testConstructorNullPointerException4()
Constructor throws if workQueue is set to null
|
void |
testConstructorNullPointerException5()
Constructor throws if handler is set to null
|
void |
testConstructorNullPointerException6()
Constructor throws if workQueue is null
|
void |
testConstructorNullPointerException7()
Constructor throws if handler is null
|
void |
testConstructorNullPointerException8()
Constructor throws if ThreadFactory is null
|
void |
testCorePoolSizeIllegalArgumentException()
setCorePoolSize of negative value throws IllegalArgumentException
|
void |
testDiscardOldestOnShutdown()
execute using DiscardOldestPolicy drops task on shutdown
|
void |
testDiscardOnShutdown()
execute using DiscardPolicy drops task on shutdown
|
void |
testExecute()
execute successfully executes a runnable
|
void |
testExecuteNull()
execute(null) throws NPE
|
void |
testFailingThreadFactory()
Execution continues if there is at least one thread even if
thread factory fails to create more
|
void |
testGet_cancelled()
get(cancelled task) throws CancellationException
|
void |
testGetActiveCount()
getActiveCount increases but doesn't overestimate, when a
thread becomes active
|
void |
testGetCompletedTaskCount()
getCompletedTaskCount increases, but doesn't overestimate,
when tasks complete
|
void |
testGetCorePoolSize()
getCorePoolSize returns size given in constructor if not otherwise set
|
void |
testGetKeepAliveTime()
getKeepAliveTime returns value given in constructor if not otherwise set
|
void |
testGetLargestPoolSize()
getLargestPoolSize increases, but doesn't overestimate, when
multiple threads active
|
void |
testGetMaximumPoolSize()
getMaximumPoolSize returns value given in constructor if not
otherwise set
|
void |
testGetPoolSize()
getPoolSize increases, but doesn't overestimate, when threads
become active
|
void |
testGetQueue()
getQueue returns the work queue, which contains queued tasks
|
void |
testGetRejectedExecutionHandler()
getRejectedExecutionHandler returns handler in constructor if not set
|
void |
testGetTaskCount()
getTaskCount increases, but doesn't overestimate, when tasks submitted
|
void |
testGetThreadFactory()
getThreadFactory returns factory in constructor if not set
|
void |
testInterruptedSubmit()
get of submitted callable throws InterruptedException if interrupted
|
void |
testInvokeAll1()
invokeAll(null) throws NPE
|
void |
testInvokeAll2()
invokeAll(empty collection) returns empty collection
|
void |
testInvokeAll3()
invokeAll(c) throws NPE if c has null elements
|
void |
testInvokeAll4()
get of element of invokeAll(c) throws exception on failed task
|
void |
testInvokeAll5()
invokeAll(c) returns results of all completed tasks
|
void |
testInvokeAny1()
invokeAny(null) throws NPE
|
void |
testInvokeAny2()
invokeAny(empty collection) throws IAE
|
void |
testInvokeAny3()
invokeAny(c) throws NPE if c has null elements
|
void |
testInvokeAny4()
invokeAny(c) throws ExecutionException if no task completes
|
void |
testInvokeAny5()
invokeAny(c) returns result of some task
|
void |
testIsShutdown()
isShutdown is false before shutdown, true after
|
void |
testIsTerminated()
isTerminated is false before termination, true after
|
void |
testIsTerminating()
isTerminating is not true when running or when terminated
|
void |
testKeepAliveTimeIllegalArgumentException()
setKeepAliveTime throws IllegalArgumentException
when given a negative value
|
void |
testMaximumPoolSizeIllegalArgumentException()
setMaximumPoolSize(int) throws IllegalArgumentException if
given a value less the core pool size
|
void |
testMaximumPoolSizeIllegalArgumentException2()
setMaximumPoolSize throws IllegalArgumentException
if given a negative value
|
void |
testPoolSizeInvariants()
Configuration changes that allow core pool size greater than
max pool size result in IllegalArgumentException.
|
void |
testPrestartAllCoreThreads()
prestartAllCoreThreads starts all corePoolSize threads
|
void |
testPrestartCoreThread()
prestartCoreThread starts a thread if under corePoolSize, else doesn't
|
void |
testPurge()
purge removes cancelled tasks from the queue
|
void |
testRejectedExecutionExceptionOnShutdown()
execute throws RejectedExecutionException if shutdown
|
void |
testRejectedRecycledTask()
execute allows the same task to be submitted multiple times, even
if rejected
|
void |
testRemove()
remove(task) removes queued task, and fails to remove active task
|
void |
testSaturatedExecute()
execute throws RejectedExecutionException if saturated.
|
void |
testSaturatedExecute2()
executor using CallerRunsPolicy runs task if saturated.
|
void |
testSaturatedExecute3()
executor using DiscardPolicy drops task if saturated.
|
void |
testSaturatedExecute4()
executor using DiscardOldestPolicy drops oldest task if saturated.
|
void |
testSaturatedSubmitCallable()
submit(callable) throws RejectedExecutionException if saturated.
|
void |
testSaturatedSubmitRunnable()
submit(runnable) throws RejectedExecutionException if saturated.
|
void |
testSetRejectedExecutionHandler()
setRejectedExecutionHandler sets the handler returned by
getRejectedExecutionHandler
|
void |
testSetRejectedExecutionHandlerNull()
setRejectedExecutionHandler(null) throws NPE
|
void |
testSetThreadFactory()
setThreadFactory sets the thread factory returned by getThreadFactory
|
void |
testSetThreadFactoryNull()
setThreadFactory(null) throws NPE
|
void |
testShutdownNow()
shutdownNow returns a list containing tasks that were not run,
and those tasks are drained from the queue
|
void |
testSubmitCallable()
completed submit of callable returns result
|
void |
testSubmitRunnable()
completed submit of runnable returns successfully
|
void |
testSubmitRunnable2()
completed submit of (runnable, result) returns result
|
void |
testTerminated()
terminated() is called on termination
|
void |
testTimedInvokeAll1()
timed invokeAll(null) throws NPE
|
void |
testTimedInvokeAll2()
timed invokeAll(empty collection) returns empty collection
|
void |
testTimedInvokeAll3()
timed invokeAll(c) throws NPE if c has null elements
|
void |
testTimedInvokeAll4()
get of element of invokeAll(c) throws exception on failed task
|
void |
testTimedInvokeAll5()
timed invokeAll(c) returns results of all completed tasks
|
void |
testTimedInvokeAll6()
timed invokeAll(c) cancels tasks not completed by timeout
|
void |
testTimedInvokeAllNullTimeUnit()
timed invokeAll(,,null) throws NPE
|
void |
testTimedInvokeAny1()
timed invokeAny(null) throws NPE
|
void |
testTimedInvokeAny2()
timed invokeAny(empty collection) throws IAE
|
void |
testTimedInvokeAny3()
timed invokeAny(c) throws NPE if c has null elements
|
void |
testTimedInvokeAny4()
timed invokeAny(c) throws ExecutionException if no task completes
|
void |
testTimedInvokeAny5()
timed invokeAny(c) returns result of some task
|
void |
testTimedInvokeAnyNullTimeUnit()
timed invokeAny(,,null) throws NPE
|
addNamedTestClasses, assertIteratorExhausted, assertThrows, atLeastJava10, atLeastJava6, atLeastJava7, atLeastJava8, atLeastJava9, await, await, await, awaiter, countDowner, getShortDelay, jdk8ParameterizedTestSuite, latchAwaitingStringTask, newTestSuite, parameterizedTestSuite, permissivePolicy, possiblyInterruptedRunnable, runBare, runTest, runTestProfiled, runWithoutPermissions, runWithPermissions, runWithSecurityManagerWithPermissions, setDelays, setUp, shouldThrow, shouldThrow, tearDown, testMethodNames, threadAssertEquals, threadAssertEquals, threadAssertFalse, threadAssertNull, threadAssertSame, threadAssertTrue, threadFail, threadRecordFailure, threadShouldThrow, threadShouldThrow, threadUnexpectedException, trackedRunnable
public void testExecute() throws InterruptedException
InterruptedException
public void testGetActiveCount() throws InterruptedException
InterruptedException
public void testPrestartCoreThread()
public void testPrestartAllCoreThreads()
public void testGetCompletedTaskCount() throws InterruptedException
InterruptedException
public void testGetCorePoolSize()
public void testGetKeepAliveTime()
public void testGetThreadFactory()
public void testSetThreadFactory()
public void testSetThreadFactoryNull()
public void testGetRejectedExecutionHandler()
public void testSetRejectedExecutionHandler()
public void testSetRejectedExecutionHandlerNull()
public void testGetLargestPoolSize() throws InterruptedException
InterruptedException
public void testGetMaximumPoolSize()
public void testGetPoolSize() throws InterruptedException
InterruptedException
public void testGetTaskCount() throws InterruptedException
InterruptedException
public void testIsShutdown()
public void testAwaitTermination_timesOut() throws InterruptedException
InterruptedException
public void testIsTerminated() throws InterruptedException
InterruptedException
public void testIsTerminating() throws InterruptedException
InterruptedException
public void testGetQueue() throws InterruptedException
InterruptedException
public void testRemove() throws InterruptedException
InterruptedException
public void testPurge() throws InterruptedException
InterruptedException
public void testShutdownNow() throws InterruptedException
InterruptedException
public void testConstructor1()
public void testConstructor2()
public void testConstructor3()
public void testConstructor4()
public void testConstructor5()
public void testConstructorNullPointerException()
public void testConstructor6()
public void testConstructor7()
public void testConstructor8()
public void testConstructor9()
public void testConstructor10()
public void testConstructorNullPointerException2()
public void testConstructorNullPointerException3()
public void testConstructor11()
public void testConstructor12()
public void testConstructor13()
public void testConstructor14()
public void testConstructor15()
public void testConstructorNullPointerException4()
public void testConstructorNullPointerException5()
public void testConstructor16()
public void testConstructor17()
public void testConstructor18()
public void testConstructor19()
public void testConstructor20()
public void testConstructorNullPointerException6()
public void testConstructorNullPointerException7()
public void testConstructorNullPointerException8()
public void testInterruptedSubmit() throws InterruptedException
InterruptedException
public void testSaturatedExecute()
public void testSaturatedSubmitRunnable()
public void testSaturatedSubmitCallable()
public void testSaturatedExecute2()
public void testSaturatedExecute3()
public void testSaturatedExecute4()
public void testRejectedExecutionExceptionOnShutdown()
public void testCallerRunsOnShutdown()
public void testDiscardOnShutdown()
public void testDiscardOldestOnShutdown()
public void testExecuteNull()
public void testCorePoolSizeIllegalArgumentException()
public void testMaximumPoolSizeIllegalArgumentException()
public void testMaximumPoolSizeIllegalArgumentException2()
public void testPoolSizeInvariants()
public void testKeepAliveTimeIllegalArgumentException()
public void testTerminated()
public void testBeforeAfter() throws InterruptedException
InterruptedException
public void testSubmitCallable() throws Exception
Exception
public void testSubmitRunnable() throws Exception
Exception
public void testSubmitRunnable2() throws Exception
Exception
public void testInvokeAny1() throws Exception
Exception
public void testInvokeAny2() throws Exception
Exception
public void testInvokeAny3() throws Exception
Exception
public void testInvokeAny4() throws Exception
Exception
public void testInvokeAny5() throws Exception
Exception
public void testInvokeAll1() throws Exception
Exception
public void testInvokeAll2() throws InterruptedException
InterruptedException
public void testInvokeAll3() throws Exception
Exception
public void testInvokeAll4() throws Exception
Exception
public void testInvokeAll5() throws Exception
Exception
public void testTimedInvokeAny1() throws Exception
Exception
public void testTimedInvokeAnyNullTimeUnit() throws Exception
Exception
public void testTimedInvokeAny2() throws Exception
Exception
public void testTimedInvokeAny3() throws Exception
Exception
public void testTimedInvokeAny4() throws Exception
Exception
public void testTimedInvokeAny5() throws Exception
Exception
public void testTimedInvokeAll1() throws Exception
Exception
public void testTimedInvokeAllNullTimeUnit() throws Exception
Exception
public void testTimedInvokeAll2() throws InterruptedException
InterruptedException
public void testTimedInvokeAll3() throws Exception
Exception
public void testTimedInvokeAll4() throws Exception
Exception
public void testTimedInvokeAll5() throws Exception
Exception
public void testTimedInvokeAll6() throws Exception
Exception
public void testFailingThreadFactory() throws InterruptedException
InterruptedException
public void testAllowsCoreThreadTimeOut()
public void testAllowCoreThreadTimeOut_true() throws Exception
Exception
public void testAllowCoreThreadTimeOut_false() throws Exception
Exception
public void testRejectedRecycledTask() throws InterruptedException
InterruptedException