我有一个简单的单元测试,比如
"foo" in {
val probe = TestProbe()
val actor = TestActorRef(Props(new MyActor("blabla")) {
override def createActor: ActorRef = probe.ref
}))
}
但是,类MyActor
包含一个名为probe
的字段,因此我的覆盖引用此字段而不是本地测试变量。代码无法编译(因为probe
字段没有ref
成员)。
我当然可以简单地重命名变量,但是我想如何正确地执行它 - 我的意思是如何从我的本地上下文中引用变量,如何解决这个'名称冲突'?
答案 0 :(得分:1)
此处有一个类似的问题:Scala: How to access a shadowed function variable from an object虽然我不认为它是重复的。
但同样的答案适用:
不,这是不可能的。没有重命名它就无法引用外部变量,因为外部块没有标识。