ScalaCheck规范在升级后寻求Matcher [String]

时间:2017-02-20 00:37:32

标签: scala specs2 scalacheck

从规范2.4.13升级到3.7.1

"foo" should {
  "bar" >> prop((i: Int) =>
    i % 50 must be>= 0
  )
}

不再编译。它失败了

type mismatch;
[error]  found   : org.specs2.specification.core.Fragment
[error]  required: org.specs2.matcher.Matcher[String]
[error]     "bar" >> prop((i: Int) =>
[error]           ^

将其更改为

  "foo" >> {
    "bar" >> prop((i: Int) =>
      i % 50 must be>= 0
    )
  }

将允许它编译并传递。

should的行为是否已被更改?

1 个答案:

答案 0 :(得分:1)

我在3.8.8中没有收到此类错误。但是,这可能是should用于示例块而should用作匹配器构造(a should be_>=(0))的结果。

您可以通过混合org.specs2.matcher.NoShouldExpectations

删除后一种用法