Java 如何监控生育的儿童演员的死亡
我有以下亲子关系Java 如何监控生育的儿童演员的死亡,java,testing,akka,parent-child,Java,Testing,Akka,Parent Child,我有以下亲子关系 public class ParentActor extends UntypedActor { @Override public void onReceive(Object msg) throws Exception { if (msg instanceof Command) { final String data = ((Command) msg).getData(); final Event
public class ParentActor extends UntypedActor {
@Override
public void onReceive(Object msg) throws Exception {
if (msg instanceof Command) {
final String data = ((Command) msg).getData();
final Event event = new Event(data, UUID.randomUUID().toString());
ActorRef childActor = getContext().actorOf(Props.create(ChildActor.class), "child-actor");
childActor.tell(event, getSelf());
} else if (msg.equals("echo")) {
log.info("ECHO!");
}
}
}
public class ChildActor extends UntypedActor {
@Override
public void onReceive(Object msg) {
log.info("Received Event: " + msg);
//PoisonPill and kill self
}
}
我如何编写一个测试来观察并确认儿童演员在向家长发送消息后死亡
我有以下内容导致断言超时
@Before
childProps = Props.create(ForwarderActor.class, childProbe.getRef());
childRef = TestActorRef.create(system, childProps);
@Test
public void myTest () {
underTest.tell("send parent message);
childProbe.expectMsgClass(Terminated.class);
}
和货代演员
import akka.actor.ActorRef;
import akka.actor.UntypedActor;
public class ForwarderActor extends UntypedActor {
final ActorRef target;
public ForwarderActor(ActorRef target) {
this.target = target;
}
public void onReceive(Object msg) {
target.forward(msg, getContext());
}
}
我想这里的问题是,我的孩子演员不是通过道具传进来的,而是在父母演员身上初始化的,这是不是很糟糕的设计?如何测试此设置?您是否看过有关此主题的文档:是的,我已经更新了问题