gpt4 book ai didi

scala - 为 testProbe 提供 ActorPath

转载 作者:行者123 更新时间:2023-11-28 19:42:19 29 4
gpt4 key购买 nike

我有一些代码使用 ActorPath 而不是 ActorRef 向 actor 发送消息

system.actorSelection("/user/myActor") ! "a message"

我需要确保这条消息真的被发送了。所以我需要在我的测试中创建一个位于这个 actor 路径中的 testProbe(或类似的东西),以便它接收这些消息。

val probe = TestProbe()
val system.actorOf(probe.ref, "myActor") // ??? I want to give my probe name and path

最佳答案

我想出了一个不太优雅的解决方案。
我定义了一个名为“ForwardActor”的助手 actor

class ForwardActor(to: ActorRef) extends Actor {
def receive = {
case x => to.forward(x)
}
}

然后在我的测试用例中

 val probe = TestProbe() 
system.actorOf(Props(new ForwardActor(probe.ref)), "myActor")
probe.expectMsg(...)

关于scala - 为 testProbe 提供 ActorPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21285260/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com