Merge pull request #18214 from ktoso/wip-18061-testactorref-dislikes-persistentactor-ktoso
=per,doc #18061 doc that Persistence won't work with TestActorRef
This commit is contained in:
commit
9422baf5a2
6 changed files with 37 additions and 7 deletions
|
|
@ -853,6 +853,14 @@ or
|
|||
|
||||
in your Akka configuration. The LevelDB Java port is for testing purposes only.
|
||||
|
||||
.. warning::
|
||||
It is not possible to test persistence provided classes (i.e. :ref:`PersistentActor <event-sourcing-java>`
|
||||
and :ref:`AtLeastOnceDelivery <at-least-once-delivery-java>`) using ``TestActorRef`` due to its *synchronous* nature.
|
||||
These traits need to be able to perform asynchronous tasks in the background in order to handle internal persistence
|
||||
related events.
|
||||
|
||||
When testing Persistence based projects always rely on :ref:`asynchronous messaging using the TestKit <async-integration-testing-java>`.
|
||||
|
||||
Multiple persistence plugin configurations
|
||||
==========================================
|
||||
|
||||
|
|
|
|||
|
|
@ -844,6 +844,14 @@ or
|
|||
|
||||
in your Akka configuration. The LevelDB Java port is for testing purposes only.
|
||||
|
||||
.. warning::
|
||||
It is not possible to test persistence provided classes (i.e. :ref:`PersistentActor <event-sourcing-java>`
|
||||
and :ref:`AtLeastOnceDelivery <at-least-once-delivery-java>`) using ``TestActorRef`` due to its *synchronous* nature.
|
||||
These traits need to be able to perform asynchronous tasks in the background in order to handle internal persistence
|
||||
related events.
|
||||
|
||||
When testing Persistence based projects always rely on :ref:`asynchronous messaging using the TestKit <async-integration-testing-java>`.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
|
|
|
|||
|
|
@ -70,6 +70,7 @@ section below.
|
|||
to ask the Actor to reply with the state you want to run assertions against),
|
||||
instead of using ``TestActorRef`` whenever possible.
|
||||
|
||||
.. warning::
|
||||
Due to the synchronous nature of ``TestActorRef`` it will **not** work with some support
|
||||
traits that Akka provides as they require asynchronous behaviours to function properly.
|
||||
Examples of traits that do not mix well with test actor refs are :ref:`PersistentActor <event-sourcing-java>`
|
||||
|
|
@ -151,6 +152,8 @@ Feel free to experiment with the possibilities, and if you find useful
|
|||
patterns, don't hesitate to let the Akka forums know about them! Who knows,
|
||||
common operations might even be worked into nice DSLs.
|
||||
|
||||
.. _async-integration-testing-java:
|
||||
|
||||
Asynchronous Integration Testing with :class:`JavaTestKit`
|
||||
==========================================================
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue