限制Gen.posNum在一个范围内

时间:2014-09-19 03:24:42

标签: specs2 scalacheck

我正在我的规范中构建Arbitrary[Source],如下所示:

implicit def arbSource = Arbitrary {
  for {
    i: Int <- Gen.posNum[Int]
    ss: List[String] <- Gen.listOfN(i, Gen.alphaStr)
  } yield Source.fromString(ss.mkString("\n"))
}

如何进行以下检查? (即如何将i限制在一定范围内)

def test = arbSource{s => s.getLines().toSeq.size must beBetween(1, 200)}

1 个答案:

答案 0 :(得分:2)

使用Gen.choose(min, max)代替Gen.posNum[Int]