Class AbstractListenableFutureTest
java.lang.Object
junit.framework.Assert
junit.framework.TestCase
com.google.common.util.concurrent.testing.AbstractListenableFutureTest
- All Implemented Interfaces:
junit.framework.Test
public abstract class AbstractListenableFutureTest
extends junit.framework.TestCase
Abstract test case parent for anything implementing
ListenableFuture. Tests the two get
methods and the addListener method.- Since:
- 10.0
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract <V> ListenableFuture<V>createListenableFuture(V value, Exception except, CountDownLatch waitOn) Constructs a listenable future with a value available after the latch has counted down.protected voidsetUp()protected voidtearDown()voidTests that all listeners complete, even if they were added before or after the future was finishing.voidTests that a canceled future throws a cancellation exception.voidTests that theFuture.get()method blocks until a value is available.voidvoidTests that theFuture.get(long, TimeUnit)method times out correctly.Methods inherited from class junit.framework.TestCase
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, runBare, runTest, setName, toString
-
Field Details
-
latch
-
future
-
-
Constructor Details
-
AbstractListenableFutureTest
public AbstractListenableFutureTest()
-
-
Method Details
-
setUp
- Overrides:
setUpin classjunit.framework.TestCase- Throws:
Exception
-
tearDown
- Overrides:
tearDownin classjunit.framework.TestCase- Throws:
Exception
-
createListenableFuture
protected abstract <V> ListenableFuture<V> createListenableFuture(V value, Exception except, CountDownLatch waitOn) Constructs a listenable future with a value available after the latch has counted down. -
testGetBlocksUntilValueAvailable
Tests that theFuture.get()method blocks until a value is available.- Throws:
Throwable
-
testTimeoutOnGetWorksCorrectly
Tests that theFuture.get(long, TimeUnit)method times out correctly. -
testCanceledFutureThrowsCancellation
Tests that a canceled future throws a cancellation exception.This method checks the cancel, isCancelled, and isDone methods.
- Throws:
Exception
-
testListenersNotifiedOnError
- Throws:
Exception
-
testAllListenersCompleteSuccessfully
Tests that all listeners complete, even if they were added before or after the future was finishing. Also acts as a concurrency test to make sure the locking is done correctly when a future is finishing so that no listeners can be lost.
-