Based on the source code https://github.com/python/cpython/blob/
4a686504eb2bbf69adf78077458508a7ba131667/Lib/multiprocessing/pool.py#L755 AsyncResult.successful() raises a ValueError, not an AssertionError.
Return whether the call completed without raising an exception. Will
raise :exc:`AssertionError` if the result is not ready.
+ .. versionchanged:: 3.7
+ If the result is not ready, :exc:`ValueError` is raised instead of
+ :exc:`AssertionError`.
+
The following example demonstrates the use of a pool::
from multiprocessing import Pool