我想使用ScalaTest的Checkers特性来使用来自ScalaCheck的ScalaTest案例。
我玩的一个简单案例是:
test("can create local date UTC from millis") {
check(localDate.toTimestampUTC.toLocalDateUTC == localDate)
}我需要创建一个任意的LocalDate,所以我尝试了如下:
object ArbitraryValues {
implicit def abc(): Arbitrary[LocalDate] = Arbitrary(Gen.choose(new LocalDate(0L), new LocalDate(Long.MaxValue)))
}它不编译,说,
错误:找不到参数c: org.scalacheck.Chooseorg.joda.time.LocalDate隐式val : ArbitraryLocalDate =任意(Gen.choose(新LocalDate(0L),新LocalDate(Long.MaxValue))的隐式值
和
错误:未找到: value localDate check(localDate.toTimestampUTC.toLocalDateUTC == localDate)
发布于 2011-09-28 23:32:27
好的,通过尝试和错误找到了答案。我的工作代码如下所示:
object ArbitraryValues {
implicit val abc: Arbitrary[LocalDate] = Arbitrary(Gen.choose(0L, Long.MaxValue).map(new LocalDate(_)))
}
test("can create local date UTC from millis -and- vice versa") { check((localDate: LocalDate) =>
localDate.toTimestampUTC.toLocalDateUTC == localDate)
}我必须改变创建ArbitraryLocalDate的方式,然后更新检查的语法。
https://stackoverflow.com/questions/7590698
复制相似问题