【发布时间】:2015-01-07 12:30:02
【问题描述】:
我有以下构造,我有一个
trait DataServiceLocalImpl extends DataService {
override lazy val dataService = DataComponentLocalImpl
}
object DataComponentLocalImpl extends DataComponent {
def getData(element:String):String = GetStuffFromFile(element)
}
trait DataService {
val dataService: DataComponent
}
trait DataComponent {
def getData(element:String):String
}
GetStuffFromFile 从磁盘读取文件一次(我只想要一次,因此对象),创建一个映射,然后返回元素的值。
这一切都是在 Play Framework 2.3 环境中完成的,并且该应用程序也可以正常工作,但是当我在测试中隐式使用它时,我收到以下错误:
java.lang.NoClassDefFoundError: Could not initialize class DataComponentLocalImpl
测试套件:
class AutoCompleteSpec extends PlaySpec with Mockito with OneAppPerSuite {
val resource = new DataServiceLocalImpl {}
implicit val dataService = resource.dataService
}
如果我删除隐式它会起作用......
【问题讨论】:
标签: scala unit-testing playframework-2.0