我正在编写我的第一个Scala应用程序,我对nscala-time
库的joda-time
包装器有点问题。
我有一个这样的课程:
package domain
import org.joda.time.{Period => JodaPeriod}
case class GroundTime(val minimum: JodaPeriod, standard: JodaPeriod)
(我重命名为Period
课程,因为我的网域已经有Period
个课程了)
现在,在我的specs2
测试中,我想编写类似的内容:
"check standard ground time constraint" in {
import com.github.nscala_time.time.Imports._
val groundTime = GroundTime(minimum=10 minutes, standard=15 minutes)
但我收到错误cannot resolve symbol minutes
。
我想在github
库的nscala-time
页面上执行类似代码段的操作:
2.hours + 45.minutes + 10.seconds
// returns com.github.nscala_time.time.DurationBuilder
// (can be used as a Duration or as a Period)
答案 0 :(得分:2)
我深入研究了specs2
代码,我发现通过扩展Specification
,您还可以从TimeConversions
导入类似specs2
的内容,并minutes
从minutes
“隐藏”nscala-time
函数(我说的是阴影,但这可能是隐式转换的问题)。
但我也从NoTimeConversions
发现了名为specs2
的特征,所以现在写的时候
MySpec extends Specification with NoTimeConversions
我可以写10.minutes
,它首先会产生DurationBuilder
。