Gen.choose()和.oneOf()的输出

Kev*_*ith 1 scala scalatest scalacheck

运行以下测试时,Gen()将打印出两个println语句.

根据ScalaCheck 文档,我希望输出为:

(号码,号码)

"你好"或"世界"

class TestScalaCheck extends FlatSpec {

    @author first test - https://github.com/rickynils/scalacheck/wiki/User-Guide
    "a test" should "print out Gen.choose(1, 100)" in {
        val myGen = for {
          n <- Gen.choose(10,20)
          m <- Gen.choose(2*n, 500)
        } yield (n,m)

        println(myGen)

        val c = Gen.oneOf("Hello", "World")
        println(c)
    }
}
Run Code Online (Sandbox Code Playgroud)

Sha*_*nds 6

Gen[T]是值的生成器(类型T),这是两者myGenc以上的类型.如果要打印出生成器可以生成的示例值(包装为选项),请尝试println(myGen.sample)println(c.sample).