Scala 无法在子剪切中使用modifyBindings
modifyBindings是否按照承诺工作?此测试应通过:Scala 无法在子剪切中使用modifyBindings,scala,subcut,Scala,Subcut,modifyBindings是否按照承诺工作?此测试应通过: import org.scalatest.FunSuite import org.scala_tools.subcut.inject.NewBindingModule import org.scala_tools.subcut.inject.BindingModule import org.scala_tools.subcut.inject.Injectable import org.junit.Test case class Re
import org.scalatest.FunSuite
import org.scala_tools.subcut.inject.NewBindingModule
import org.scala_tools.subcut.inject.BindingModule
import org.scala_tools.subcut.inject.Injectable
import org.junit.Test
case class Resource1(name: String)
class ResourceClient(implicit val bindingModule: BindingModule) extends Injectable {
val res1 = inject[Resource1]
}
object Config1 extends NewBindingModule(module => {
module.bind[Resource1] toSingle new Resource1("name1")
})
class TestModifyBindings extends FunSuite {
@Test
def test1() {
implicit val bindingModule = Config1
val rc = new ResourceClient
assert(rc.res1.name == "name1")
Config1.modifyBindings { module =>
module.bind[Resource1] toSingle new Resource1("name2")
val rc2 = new ResourceClient //not sure if rc can be used here
assert(rc2.res1.name == "name2") //FAILS
}
}
}
你知道我错过了什么吗?如果你
Config1.modifyBindings { module =>
进入
这能解决问题吗?如果你
Config1.modifyBindings { module =>
进入
这能解决问题吗?+1抱歉,我已经很长时间没有使用Scala了,无法验证您的答案。+1抱歉,我已经很长时间没有使用Scala了,无法验证您的答案。