scalacheck

Scalacheck generate Gen.alphastr with the same length


I need to generate strings with the same length. I can't realize how. Many thanks

val s = for {
  x <- Gen.alphaStr
} yield ...

Solution

  • example code:

    import org.scalacheck.Gen
    import org.scalacheck.Prop.forAll    
    
    // strGen generates a fixed length random string
    val strGen = (n: Int) => Gen.listOfN(n, Gen.alphaChar).map(_.mkString)
    
    val fixedLengthStr = forAll(strGen(10)){ s =>
      s.length == 10
    }
    
    fixedLengthStr.check
    

    to inspect a generated string use:

    strGen(5).sample