Wie verspotte ich einen Akka-Schauspieler beim Unit-Test einer Klasse?

Ich habe eine Controller-Klasse, die die Anforderungen steuert, die an einen Akka-Akteur gesendet werden, der in den Controller eingespeist wird.

Controller-Code:

class Controller(actor: ActorRef) {
  def control(msg: String): Future[String] = {
    actor.ask(msg)(Timeout(2 seconds)).mapTo[String]
  }
}

Und der Code meines Schauspielers lautet:

class ActorA extends Actor {
  override def receive: Receive = {
    case msg: String => sender ! msg
    case msg: Int => sender ! msg.toString
    case _ => "Invalid command!"
}

Jetzt muss ich das Verhalten von ActorA zum Unit-Test-Controller verspotten. Gibt es eine Möglichkeit, dies über Akka TestKit zu tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage