首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >帮助处理ScalaCheck

帮助处理ScalaCheck
EN

Stack Overflow用户
提问于 2011-09-28 23:06:27
回答 1查看 1.8K关注 0票数 5

我想使用ScalaTest的Checkers特性来使用来自ScalaCheck的ScalaTest案例。

我玩的一个简单案例是:

代码语言:javascript
复制
 test("can create local date UTC from millis") {
     check(localDate.toTimestampUTC.toLocalDateUTC == localDate)
 }

我需要创建一个任意的LocalDate,所以我尝试了如下:

代码语言:javascript
复制
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)

EN

回答 1

Stack Overflow用户

发布于 2011-09-28 23:32:27

好的,通过尝试和错误找到了答案。我的工作代码如下所示:

代码语言:javascript
复制
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的方式,然后更新检查的语法。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7590698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档