akka.testkit

TestFSMRef

class TestFSMRef[S, D, T <: Actor] extends TestActorRef[T]

This is a specialised form of the TestActorRef with support for querying and setting the state of a FSM. Use a LoggingFSM with this class if you also need to inspect event traces.


val fsm = TestFSMRef(new Actor with LoggingFSM[Int, Null] {
    override def logDepth = 12
    startWith(1, null)
    when(1) {
      case Ev("hello") => goto(2)
    }
    when(2) {
      case Ev("world") => goto(1)
    }
  }
assert (fsm.stateName == 1)
fsm ! "hallo"
assert (fsm.stateName == 2)
assert (fsm.underlyingActor.getLog == IndexedSeq(FSMLogEntry(1, null, "hallo")))

Source
TestFSMRef.scala
Since

1.2

Linear Supertypes
TestActorRef[T], LocalActorRef, LocalRef, ActorRefScope, ActorRefWithCell, InternalActorRef, ScalaActorRef, ActorRef, Serializable, Serializable, Comparable[ActorRef], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. TestFSMRef
  2. TestActorRef
  3. LocalActorRef
  4. LocalRef
  5. ActorRefScope
  6. ActorRefWithCell
  7. InternalActorRef
  8. ScalaActorRef
  9. ActorRef
  10. Serializable
  11. Serializable
  12. Comparable
  13. AnyRef
  14. Any
Implicitly
  1. by actorRef2Scala
  2. by scala2ActorRef
  3. by any2stringadd
  4. by any2stringfmt
  5. by any2ArrowAssoc
  6. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TestFSMRef(system: ActorSystem, props: Props, supervisor: ActorRef, name: String)(implicit ev: <:<[T, FSM[S, D]])

Value Members

  1. def !(message: Any)(implicit sender: ActorRef): Unit

    Definition Classes
    LocalActorRef → ScalaActorRef
  2. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  3. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  4. final def ##(): Int

    Definition Classes
    AnyRef → Any
  5. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  6. def ->[B](y: B): (TestFSMRef[S, D, T], B)

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ArrowAssoc[TestFSMRef[S, D, T]] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  7. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  8. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  9. def actorContext: ActorContext

    Attributes
    protected
    Definition Classes
    LocalActorRef
  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def cancelTimer(name: String): Unit

    Proxy for akka.actor.FSM#cancelTimer.

  12. def children: Iterable[ActorRef]

    Definition Classes
    LocalActorRef → ActorRefWithCell
  13. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  14. final def compareTo(other: ActorRef): Int

    Definition Classes
    ActorRef → Comparable
  15. val dispatcher: MessageDispatcher

    Definition Classes
    TestActorRef
  16. def ensuring(cond: (TestFSMRef[S, D, T]) ⇒ Boolean, msg: ⇒ Any): TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: (TestFSMRef[S, D, T]) ⇒ Boolean): TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean, msg: ⇒ Any): TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. def ensuring(cond: Boolean): TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  20. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  21. final def equals(that: Any): Boolean

    Definition Classes
    ActorRef → AnyRef → Any
  22. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  24. def forward(message: Any)(implicit context: ActorContext): Unit

    Definition Classes
    ActorRef
  25. def getChild(names: Iterator[String]): InternalActorRef

    Definition Classes
    LocalActorRef → InternalActorRef
  26. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  27. def getParent: InternalActorRef

    Definition Classes
    LocalActorRef → InternalActorRef
  28. def getSingleChild(name: String): InternalActorRef

    Definition Classes
    LocalActorRef → ActorRefWithCell
  29. final def hashCode(): Int

    Definition Classes
    ActorRef → AnyRef → Any
  30. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  31. final def isLocal: Boolean

    Definition Classes
    LocalRef → ActorRefScope
  32. def isStateTimerActive: Boolean

    Proxy for akka.actor.FSM#isStateTimerActive.

  33. def isTimerActive(name: String): Boolean

    Proxy for akka.actor.FSM#isStateTimerActive.

  34. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  35. def newActorCell(system: ActorSystemImpl, ref: InternalActorRef, props: Props, dispatcher: MessageDispatcher, supervisor: InternalActorRef): ActorCell

    Attributes
    protected
    Definition Classes
    TestActorRef → LocalActorRef
  36. final def notify(): Unit

    Definition Classes
    AnyRef
  37. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  38. val path: ActorPath

    Definition Classes
    LocalActorRef → ActorRef
  39. def provider: ActorRefProvider

    Definition Classes
    LocalActorRef → InternalActorRef
  40. def receive(o: Any, sender: ActorRef): Unit

    Directly inject messages into actor receive behavior.

    Directly inject messages into actor receive behavior. Any exceptions thrown will be available to you, while still being able to use become/unbecome.

    Definition Classes
    TestActorRef
  41. def receive(o: Any): Unit

    Directly inject messages into actor receive behavior.

    Directly inject messages into actor receive behavior. Any exceptions thrown will be available to you, while still being able to use become/unbecome.

    Definition Classes
    TestActorRef
  42. def restart(cause: Throwable): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  43. def resume(causedByFailure: Throwable): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  44. def sendSystemMessage(message: SystemMessage): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  45. def setState(stateName: S = fsm.stateName, stateData: D = fsm.stateData, timeout: FiniteDuration = null, stopReason: Option[Reason] = None): Unit

    Change FSM state; any value left out defaults to the current FSM state (timeout defaults to None).

    Change FSM state; any value left out defaults to the current FSM state (timeout defaults to None). This method is directly equivalent to a corresponding transition initiated from within the FSM, including timeout and stop handling.

  46. def setTimer(name: String, msg: Any, timeout: FiniteDuration, repeat: Boolean = false): Unit

    Proxy for akka.actor.FSM#setTimer.

  47. def start(): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  48. def stateData: D

    Get current state data of this FSM.

  49. def stateName: S

    Get current state name of this FSM.

  50. def stop(): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  51. def suspend(): Unit

    Definition Classes
    LocalActorRef → InternalActorRef
  52. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  53. final def tell(msg: Any, sender: ActorRef): Unit

    Definition Classes
    ActorRef
  54. def toString(): String

    Definition Classes
    TestActorRef → ActorRef → AnyRef → Any
  55. def underlying: ActorCell

    Definition Classes
    LocalActorRef → ActorRefWithCell
  56. def underlyingActor: T

    Retrieve reference to the underlying actor, where the static type matches the factory used inside the constructor.

    Retrieve reference to the underlying actor, where the static type matches the factory used inside the constructor. Beware that this reference is discarded by the ActorRef upon restarting the actor (should this reference be linked to a supervisor). The old Actor may of course still be used in post-mortem assertions.

    Definition Classes
    TestActorRef
  57. def unwatch(subject: ActorRef): ActorRef

    Deregisters this actor from being a death monitor of the provided ActorRef This means that this actor will not get a Terminated()-message when the provided actor is permanently terminated.

    Deregisters this actor from being a death monitor of the provided ActorRef This means that this actor will not get a Terminated()-message when the provided actor is permanently terminated.

    returns

    the same ActorRef that is provided to it, to allow for cleaner invocations

    Definition Classes
    TestActorRef
  58. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  59. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. def watch(subject: ActorRef): ActorRef

    Registers this actor to be a death monitor of the provided ActorRef This means that this actor will get a Terminated()-message when the provided actor is permanently terminated.

    Registers this actor to be a death monitor of the provided ActorRef This means that this actor will get a Terminated()-message when the provided actor is permanently terminated.

    returns

    the same ActorRef that is provided to it, to allow for cleaner invocations

    Definition Classes
    TestActorRef
  62. def writeReplace(): AnyRef

    Attributes
    protected
    Definition Classes
    LocalActorRef
    Annotations
    @throws( ... )
  63. def [B](y: B): (TestFSMRef[S, D, T], B)

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ArrowAssoc[TestFSMRef[S, D, T]] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. def !(message: Any)(implicit sender: ActorRef): Unit

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ScalaActorRef performed by method actorRef2Scala in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ScalaActorRef).!(message)(sender)
    Definition Classes
    ScalaActorRef
  2. final def compareTo(other: ActorRef): Int

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).compareTo(other)
    Definition Classes
    ActorRef → Comparable
  3. final def equals(that: Any): Boolean

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).equals(that)
    Definition Classes
    ActorRef → AnyRef → Any
  4. def forward(message: Any)(implicit context: ActorContext): Unit

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).forward(message)(context)
    Definition Classes
    ActorRef
  5. final def hashCode(): Int

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).hashCode()
    Definition Classes
    ActorRef → AnyRef → Any
  6. def path: ActorPath

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).path
    Definition Classes
    ActorRef
  7. val self: Any

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (testFSMRef: StringAdd).self
    Definition Classes
    StringAdd
  8. val self: Any

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (testFSMRef: StringFormat).self
    Definition Classes
    StringFormat
  9. final def tell(msg: Any, sender: ActorRef): Unit

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).tell(msg, sender)
    Definition Classes
    ActorRef
  10. def toString(): String

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).toString()
    Definition Classes
    ActorRef → AnyRef → Any

Deprecated Value Members

  1. def isTerminated: Boolean

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ActorRef performed by method scala2ActorRef in akka.actor.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (testFSMRef: ActorRef).isTerminated
    Definition Classes
    ActorRef
    Annotations
    @deprecated
    Deprecated

    (Since version 2.2) Use context.watch(actor) and receive Terminated(actor)

  2. def isTerminated: Boolean

    Definition Classes
    LocalActorRef → InternalActorRef → ActorRef
    Annotations
    @deprecated
    Deprecated

    (Since version 2.2) Use context.watch(actor) and receive Terminated(actor)

  3. def x: TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to ArrowAssoc[TestFSMRef[S, D, T]] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (testFSMRef: ArrowAssoc[TestFSMRef[S, D, T]]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  4. def x: TestFSMRef[S, D, T]

    Implicit information
    This member is added by an implicit conversion from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (testFSMRef: Ensuring[TestFSMRef[S, D, T]]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from TestActorRef[T]

Inherited from LocalActorRef

Inherited from LocalRef

Inherited from ActorRefScope

Inherited from ActorRefWithCell

Inherited from InternalActorRef

Inherited from ScalaActorRef

Inherited from ActorRef

Inherited from Serializable

Inherited from Serializable

Inherited from Comparable[ActorRef]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion actorRef2Scala from TestFSMRef[S, D, T] to ScalaActorRef

Inherited by implicit conversion scala2ActorRef from TestFSMRef[S, D, T] to ActorRef

Inherited by implicit conversion any2stringadd from TestFSMRef[S, D, T] to StringAdd

Inherited by implicit conversion any2stringfmt from TestFSMRef[S, D, T] to StringFormat

Inherited by implicit conversion any2ArrowAssoc from TestFSMRef[S, D, T] to ArrowAssoc[TestFSMRef[S, D, T]]

Inherited by implicit conversion any2Ensuring from TestFSMRef[S, D, T] to Ensuring[TestFSMRef[S, D, T]]

Ungrouped