Я использую генератор ScalaCheck alphaStr
для генерации строк, но они всегда возвращаются пустыми. Например. следующий тест не проходит на первой строке.
class GenSpec extends FunSuite with GeneratorDrivenPropertyChecks with Matchers {
implicit val noShrink: Shrink[List[Char]] = Shrink.shrinkAny
test("alphaStr") {
forAll(Gen.alphaStr) { case str =>
println(str)
str.isEmpty shouldBe false
}
}
}
Выход:
TestFailedException was thrown during property evaluation.
Message: true was not equal to false
Location: (GenSpec.scala:12)
Occurred when passed generated values (
arg0 = ""
)
ScalaTestFailureLocation: org.scalatest.prop.GeneratorDrivenPropertyChecks$class at (GeneratorDrivenPropertyChecks.scala:914)
org.scalatest.exceptions.GeneratorDrivenPropertyCheckFailedException: TestFailedException was thrown during property evaluation.
Message: true was not equal to false
Location: (GenSpec.scala:12)
Occurred when passed generated values (
arg0 = ""
)
Я добавил noShrink
, чтобы убедиться, что базовый список символов не сокращается. Но все равно не получается. Кто-нибудь знает, почему?