Testkit for asynchronous testing of typed actors, meant for mixing into the test class.
Testkit for asynchronous testing of typed actors, meant for mixing into the test class.
Provides a typed actor system started on creation, used for all test cases and shut down when shutdown
is called.
The actor system has a custom guardian that allows for spawning arbitrary actors using the spawn
methods.
Designed to work with any test framework, but framework glue code that calls shutdown after all tests has run needs to be provided by the user.
For synchronous testing of a Behavior
see BehaviorTestKit
A base class for the ActorTestKit, making it possible to have testing framework (e.g.
A base class for the ActorTestKit, making it possible to have testing framework (e.g. ScalaTest) manage the lifecycle of the testkit.
An implementation for ScalaTest is ScalaTestWithActorTestKit.
Another abstract class that is testing framework specific should extend this class and
automatically shut down the testKit
when the test completes or fails by implementing ActorTestKitBase#afterAll.
Used for synchronous testing akka.actor.typed.Behaviors.
Used for synchronous testing akka.actor.typed.Behaviors. Stores all effects e.g. Spawning of children, watching and offers access to what effects have taken place.
For asynchronous testing of Behavior
s running see ActorTestKit
Not for user extension. See BehaviorTestKit.apply
factory methods
Not for user instantiation, see ManualTime#apply
A ScalaTest base class for the ActorTestKit, making it possible to have ScalaTest manage the lifecycle of the testkit.
A ScalaTest base class for the ActorTestKit, making it possible to have ScalaTest manage the lifecycle of the testkit. The testkit will be automatically shut down when the test completes or fails using ScalaTest's BeforeAndAfterAll trait. If a spec overrides afterAll it must call super.afterAll.
Note that ScalaTest is not provided as a transitive dependency of the testkit module but must be added explicitly to your project to use this.
Scala API.
Scala API. Scale timeouts (durations) during tests with the configured
'akka.test.timefactor'.
Implicit class providing dilated
method.
import scala.concurrent.duration._ import akka.actor.testkit.typed.scaladsl._ 10.milliseconds.dilated
Uses the scaling factor from the TestTimeFactor
in the TestKitSettings
(in implicit scope).
Utility for use as an ActorRef when *synchronously* testing akka.actor.typed.Behavior with akka.actor.testkit.typed.javadsl.BehaviorTestKit.
Utility for use as an ActorRef when *synchronously* testing akka.actor.typed.Behavior with akka.actor.testkit.typed.javadsl.BehaviorTestKit.
If you plan to use a real akka.actor.typed.ActorSystem then use akka.actor.testkit.typed.javadsl.TestProbe for asynchronous testing.
Use factory apply
in companion to create instances
Not for user extension
Create instances through the factories in the TestProbe companion.
Create instances through the factories in the TestProbe companion.
A test probe is essentially a queryable mailbox which can be used in place of an actor and the received messages can then be asserted
Not for user extension
Factories for behavior effects for BehaviorTestKit, each effect has a suitable equals and can be used to compare actual effects to expected ones.
Manual time allows you to do async tests while controlling the scheduler of the system.
Manual time allows you to do async tests while controlling the scheduler of the system.
To use it you need to configure the ActorSystem
/ActorTestKit
with ManualTime.config and access the
scheduler control through ManualTime.apply()