org.scalatest.prop

# PropertyChecks

#### trait PropertyChecks extends TableDrivenPropertyChecks with GeneratorDrivenPropertyChecks

Trait that facilitates property checks on data supplied by tables and generators.

This trait extends both `TableDrivenPropertyChecks` and `GeneratorDrivenPropertyChecks`. Thus by mixing in this trait you can perform property checks on data supplied either by tables or generators. For the details of table- and generator-driven property checks, see the documentation for each by following the links above.

For a quick example of using both table and generator-driven property checks in the same suite of tests, however, imagine you want to test this `Fraction,` class:

    class Fraction(n: Int, d: Int) {

      require(d != 0)
      require(d != Integer.MIN_VALUE)
      require(n != Integer.MIN_VALUE)

      val numer = if (d < 0) -1 * n else n
      val denom = d.abs

      override def toString = numer + " / " + denom
    }

If you mix in `PropertyChecks`, you could use a generator-driven property check to test that the passed values for numerator and denominator are properly normalized, like this:

    forAll { (n: Int, d: Int) =>

      whenever (d != 0 && d != Integer.MIN_VALUE
          && n != Integer.MIN_VALUE) {

        val f = new Fraction(n, d)

        if (n < 0 && d < 0 || n > 0 && d > 0)
          f.numer should be > 0
        else if (n != 0)
          f.numer should be < 0
        else
          f.numer should be === 0

        f.denom should be > 0
      }
    }

And you could use a table-driven property check to test that all combinations of invalid values passed to the `Fraction` constructor produce the expected `IllegalArgumentException`, like this:

    val invalidCombos =
      Table(
        ("n",               "d"),
        (Integer.MIN_VALUE, Integer.MIN_VALUE),
        (1,                 Integer.MIN_VALUE),
        (Integer.MIN_VALUE, 1),
        (Integer.MIN_VALUE, 0),
        (1,                 0)
      )

    forAll (invalidCombos) { (n: Int, d: Int) =>
      evaluating {
        new Fraction(n, d)
      } should produce [IllegalArgumentException]
    }

Linear Supertypes
GeneratorDrivenPropertyChecks, Configuration, TableDrivenPropertyChecks, Tables, Whenever, AnyRef, Any
Known Subclasses
PropertyChecks
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. Hide All
2. Show all

1. PropertyChecks
2. GeneratorDrivenPropertyChecks
3. Configuration
4. TableDrivenPropertyChecks
5. Tables
6. Whenever
7. AnyRef
8. Any

Visibility

1. Public
2. All

### Type Members

1. #### class ConfiguredPropertyCheck extends AnyRef

   Performs a configured property checks by applying property check functions passed to its `apply` methods to arguments supplied by implicitly passed generators, modifying the values in the `PropertyGenConfig` object passed implicitly to its `apply` methods with parameter values passed to its constructor.

2. #### case class MaxDiscarded (value: Int) extends PropertyCheckConfigParam with Product with Serializable

   A `PropertyCheckConfigParam` that specifies the maximum number of discarded property evaluations allowed during property evaluation.

3. #### case class MaxSize (value: Int) extends PropertyCheckConfigParam with Product with Serializable

   A `PropertyCheckConfigParam` that specifies the maximum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

4. #### case class MinSize (value: Int) extends PropertyCheckConfigParam with Product with Serializable

   A `PropertyCheckConfigParam` that specifies the minimum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

5. #### case class MinSuccessful (value: Int) extends PropertyCheckConfigParam with Product with Serializable

   A `PropertyCheckConfigParam` that specifies the minimum number of successful property evaluations required for the property to pass.

6. #### case class PropertyCheckConfig (minSuccessful: Int, maxDiscarded: Int, minSize: Int, maxSize: Int, workers: Int) extends Product with Serializable

   Configuration object for property checks.

7. #### class PropertyCheckConfigParam extends AnyRef

   Abstract class defining a family of configuration parameters for property checks.

8. #### case class Workers (value: Int) extends PropertyCheckConfigParam with Product with Serializable

   A `PropertyCheckConfigParam` that specifies the number of worker threads to use when evaluating a property.

### Value Members

1. #### def != (arg0: AnyRef): Boolean

   Attributes
     final
   Definition Classes
     AnyRef

2. #### def != (arg0: Any): Boolean

   Attributes
     final
   Definition Classes
     Any

3. #### def ## (): Int

   Attributes
     final
   Definition Classes
     AnyRef → Any

4. #### def == (arg0: AnyRef): Boolean

   Attributes
     final
   Definition Classes
     AnyRef

5. #### def == (arg0: Any): Boolean

   Attributes
     final
   Definition Classes
     Any

6. #### object Table extends AnyRef

   Object containing one `apply` factory method for each `TableFor<n>` class.

7. #### def asInstanceOf [T0] : T0

   Attributes
     final
   Definition Classes
     Any

8. #### def clone (): AnyRef

   Attributes
     protected[lang]
   Definition Classes
     AnyRef
   Annotations
     @throws()

9. #### def eq (arg0: AnyRef): Boolean

   Attributes
     final
   Definition Classes
     AnyRef

10. #### def equals (arg0: Any): Boolean

    Definition Classes
      AnyRef → Any

11. #### def finalize (): Unit

    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws()

12. #### def forAll [A, B, C, D, E, F] (genAndNameA: (Gen[A], String), genAndNameB: (Gen[B], String), genAndNameC: (Gen[C], String), genAndNameD: (Gen[D], String), genAndNameE: (Gen[E], String), genAndNameF: (Gen[F], String), configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E, F) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D], shrE: Shrink[E], shrF: Shrink[F]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a"), (famousLastWords, "b"), (famousLastWords, "c"), (famousLastWords, "d"), (famousLastWords, "e"), (famousLastWords, "f")) { (a: String, b: String, c: String, d: String, e: String, f: String) =>
          a.length + b.length + c.length + d.length + e.length + f.length should equal ((a + b + c + d + e + f).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

13. #### def forAll [A, B, C, D, E, F] (genA: Gen[A], genB: Gen[B], genC: Gen[C], genD: Gen[D], genE: Gen[E], genF: Gen[F], configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E, F) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D], shrE: Shrink[E], shrF: Shrink[F]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords, famousLastWords, famousLastWords, famousLastWords, famousLastWords, famousLastWords) { (a: String, b: String, c: String, d: String, e: String, f: String) =>
          a.length + b.length + c.length + d.length + e.length + f.length should equal ((a + b + c + d + e + f).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

14. #### def forAll [A, B, C, D, E, F] (nameA: String, nameB: String, nameC: String, nameD: String, nameE: String, nameF: String, configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E, F) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D], arbE: Arbitrary[E], shrE: Shrink[E], arbF: Arbitrary[F], shrF: Shrink[F]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a", "b", "c", "d", "e", "f") { (a: String, b: String, c: String, d: String, e: String, f: String) =>
          a.length + b.length + c.length + d.length + e.length + f.length should equal ((a + b + c + d + e + f).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

15. #### def forAll [A, B, C, D, E, F] (fun: (A, B, C, D, E, F) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D], arbE: Arbitrary[E], shrE: Shrink[E], arbF: Arbitrary[F], shrF: Shrink[F]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String, b: String, c: String, d: String, e: String, f: String) =>
          a.length + b.length + c.length + d.length + e.length + f.length should equal ((a + b + c + d + e + f).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

16. #### def forAll [A, B, C, D, E] (genAndNameA: (Gen[A], String), genAndNameB: (Gen[B], String), genAndNameC: (Gen[C], String), genAndNameD: (Gen[D], String), genAndNameE: (Gen[E], String), configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D], shrE: Shrink[E]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a"), (famousLastWords, "b"), (famousLastWords, "c"), (famousLastWords, "d"), (famousLastWords, "e")) { (a: String, b: String, c: String, d: String, e: String) =>
          a.length + b.length + c.length + d.length + e.length should equal ((a + b + c + d + e).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

17. #### def forAll [A, B, C, D, E] (genA: Gen[A], genB: Gen[B], genC: Gen[C], genD: Gen[D], genE: Gen[E], configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D], shrE: Shrink[E]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords, famousLastWords, famousLastWords, famousLastWords, famousLastWords) { (a: String, b: String, c: String, d: String, e: String) =>
          a.length + b.length + c.length + d.length + e.length should equal ((a + b + c + d + e).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

18. #### def forAll [A, B, C, D, E] (nameA: String, nameB: String, nameC: String, nameD: String, nameE: String, configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D, E) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D], arbE: Arbitrary[E], shrE: Shrink[E]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a", "b", "c", "d", "e") { (a: String, b: String, c: String, d: String, e: String) =>
          a.length + b.length + c.length + d.length + e.length should equal ((a + b + c + d + e).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

19. #### def forAll [A, B, C, D, E] (fun: (A, B, C, D, E) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D], arbE: Arbitrary[E], shrE: Shrink[E]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String, b: String, c: String, d: String, e: String) =>
          a.length + b.length + c.length + d.length + e.length should equal ((a + b + c + d + e).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

20. #### def forAll [A, B, C, D] (genAndNameA: (Gen[A], String), genAndNameB: (Gen[B], String), genAndNameC: (Gen[C], String), genAndNameD: (Gen[D], String), configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a"), (famousLastWords, "b"), (famousLastWords, "c"), (famousLastWords, "d")) { (a: String, b: String, c: String, d: String) =>
          a.length + b.length + c.length + d.length should equal ((a + b + c + d).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

21. #### def forAll [A, B, C, D] (genA: Gen[A], genB: Gen[B], genC: Gen[C], genD: Gen[D], configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C], shrD: Shrink[D]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords, famousLastWords, famousLastWords, famousLastWords) { (a: String, b: String, c: String, d: String) =>
          a.length + b.length + c.length + d.length should equal ((a + b + c + d).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

22. #### def forAll [A, B, C, D] (nameA: String, nameB: String, nameC: String, nameD: String, configParams: PropertyCheckConfigParam*)(fun: (A, B, C, D) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a", "b", "c", "d") { (a: String, b: String, c: String, d: String) =>
          a.length + b.length + c.length + d.length should equal ((a + b + c + d).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

23. #### def forAll [A, B, C, D] (fun: (A, B, C, D) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C], arbD: Arbitrary[D], shrD: Shrink[D]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String, b: String, c: String, d: String) =>
          a.length + b.length + c.length + d.length should equal ((a + b + c + d).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

24. #### def forAll [A, B, C] (genAndNameA: (Gen[A], String), genAndNameB: (Gen[B], String), genAndNameC: (Gen[C], String), configParams: PropertyCheckConfigParam*)(fun: (A, B, C) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a"), (famousLastWords, "b"), (famousLastWords, "c")) { (a: String, b: String, c: String) =>
          a.length + b.length + c.length should equal ((a + b + c).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

25. #### def forAll [A, B, C] (genA: Gen[A], genB: Gen[B], genC: Gen[C], configParams: PropertyCheckConfigParam*)(fun: (A, B, C) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B], shrC: Shrink[C]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords, famousLastWords, famousLastWords) { (a: String, b: String, c: String) =>
          a.length + b.length + c.length should equal ((a + b + c).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

26. #### def forAll [A, B, C] (nameA: String, nameB: String, nameC: String, configParams: PropertyCheckConfigParam*)(fun: (A, B, C) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a", "b", "c") { (a: String, b: String, c: String) =>
          a.length + b.length + c.length should equal ((a + b + c).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

27. #### def forAll [A, B, C] (fun: (A, B, C) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B], arbC: Arbitrary[C], shrC: Shrink[C]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String, b: String, c: String) =>
          a.length + b.length + c.length should equal ((a + b + c).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

28. #### def forAll [A, B] (genAndNameA: (Gen[A], String), genAndNameB: (Gen[B], String), configParams: PropertyCheckConfigParam*)(fun: (A, B) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a"), (famousLastWords, "b")) { (a: String, b: String) =>
          a.length + b.length should equal ((a + b).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

29. #### def forAll [A, B] (genA: Gen[A], genB: Gen[B], configParams: PropertyCheckConfigParam*)(fun: (A, B) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A], shrB: Shrink[B]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords, famousLastWords) { (a: String, b: String) =>
          a.length + b.length should equal ((a + b).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

30. #### def forAll [A, B] (nameA: String, nameB: String, configParams: PropertyCheckConfigParam*)(fun: (A, B) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a", "b") { (a: String, b: String) =>
          a.length + b.length should equal ((a + b).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

31. #### def forAll [A, B] (fun: (A, B) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A], arbB: Arbitrary[B], shrB: Shrink[B]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String, b: String) =>
          a.length + b.length should equal ((a + b).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

32. #### def forAll [A] (genAndNameA: (Gen[A], String), configParams: PropertyCheckConfigParam*)(fun: (A) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A]): Unit

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to named arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll ((famousLastWords, "a")) { (a: String) =>
          a.length should equal ((a).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

33. #### def forAll [A] (genA: Gen[A], configParams: PropertyCheckConfigParam*)(fun: (A) ⇒ Unit)(implicit config: PropertyCheckConfig, shrA: Shrink[A]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Performs a property check by applying the specified property check function to arguments supplied by the specified generators.

    Here's an example:

        import org.scalacheck.Gen

        // Define your own string generator:
        val famousLastWords = for {
          s <- Gen.oneOf("the", "program", "compiles", "therefore", "it", "should", "work")
        } yield s

        forAll (famousLastWords) { (a: String) =>
          a.length should equal ((a).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

34. #### def forAll [A] (nameA: String, configParams: PropertyCheckConfigParam*)(fun: (A) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A]): Unit

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function with the specified argument names to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll ("a") { (a: String) =>
          a.length should equal ((a).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

35. #### def forAll [A] (fun: (A) ⇒ Unit)(implicit config: PropertyCheckConfig, arbA: Arbitrary[A], shrA: Shrink[A]): Unit

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators.

    Here's an example:

        forAll { (a: String) =>
          a.length should equal ((a).length)
        }

    fun

      the property check function to apply to the generated arguments

    Definition Classes
      GeneratorDrivenPropertyChecks

36. #### def forAll (configParams: PropertyCheckConfigParam*): ConfiguredPropertyCheck

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators, modifying the values in the implicitly passed `PropertyGenConfig` object with explicitly passed parameter values.

    Performs a property check by applying the specified property check function to arguments supplied by implicitly passed generators, modifying the values in the implicitly passed `PropertyGenConfig` object with explicitly passed parameter values.

    This method creates a `ConfiguredPropertyCheck` object that has six overloaded apply methods that take a function. Thus it is used with functions of all six arities. Here are some examples:

        forAll (minSize(1), maxSize(10)) { (a: String) =>
          a.length should equal ((a).length)
        }

        forAll (minSize(1), maxSize(10)) { (a: String, b: String) =>
          a.length + b.length should equal ((a + b).length)
        }

        forAll (minSize(1), maxSize(10)) { (a: String, b: String, c: String) =>
          a.length + b.length + c.length should equal ((a + b + c).length)
        }

        forAll (minSize(1), maxSize(10)) { (a: String, b: String, c: String, d: String) =>
          a.length + b.length + c.length + d.length should equal ((a + b + c + d).length)
        }

        forAll (minSize(1), maxSize(10)) { (a: String, b: String, c: String, d: String, e: String) =>
          a.length + b.length + c.length + d.length + e.length should equal ((a + b + c + d + e).length)
        }

        forAll (minSize(1), maxSize(10)) { (a: String, b: String, c: String, d: String, e: String, f: String) =>
          a.length + b.length + c.length + d.length + e.length + f.length should equal ((a + b + c + d + e + f).length)
        }

    configParams

      a variable length list of `PropertyCheckConfigParam` objects that should override corresponding values in the `PropertyCheckConfig` implicitly passed to the `apply` methods of the `ConfiguredPropertyCheck` object returned by this method.

    Definition Classes
      GeneratorDrivenPropertyChecks

37. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V] (table: TableFor22[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor22`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor22`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

38. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U] (table: TableFor21[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor21`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor21`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

39. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T] (table: TableFor20[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor20`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor20`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

40. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S] (table: TableFor19[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor19`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor19`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

41. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R] (table: TableFor18[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor18`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor18`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

42. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q] (table: TableFor17[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor17`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor17`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

43. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] (table: TableFor16[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor16`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor16`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

44. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O] (table: TableFor15[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor15`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor15`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

45. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M, N] (table: TableFor14[A, B, C, D, E, F, G, H, I, J, K, L, M, N])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M, N) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor14`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor14`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

46. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L, M] (table: TableFor13[A, B, C, D, E, F, G, H, I, J, K, L, M])(fun: (A, B, C, D, E, F, G, H, I, J, K, L, M) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor13`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor13`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

47. #### def forAll [A, B, C, D, E, F, G, H, I, J, K, L] (table: TableFor12[A, B, C, D, E, F, G, H, I, J, K, L])(fun: (A, B, C, D, E, F, G, H, I, J, K, L) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor12`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor12`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

48. #### def forAll [A, B, C, D, E, F, G, H, I, J, K] (table: TableFor11[A, B, C, D, E, F, G, H, I, J, K])(fun: (A, B, C, D, E, F, G, H, I, J, K) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor11`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor11`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

49. #### def forAll [A, B, C, D, E, F, G, H, I, J] (table: TableFor10[A, B, C, D, E, F, G, H, I, J])(fun: (A, B, C, D, E, F, G, H, I, J) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor10`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor10`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

50. #### def forAll [A, B, C, D, E, F, G, H, I] (table: TableFor9[A, B, C, D, E, F, G, H, I])(fun: (A, B, C, D, E, F, G, H, I) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor9`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor9`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

51. #### def forAll [A, B, C, D, E, F, G, H] (table: TableFor8[A, B, C, D, E, F, G, H])(fun: (A, B, C, D, E, F, G, H) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor8`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor8`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

52. #### def forAll [A, B, C, D, E, F, G] (table: TableFor7[A, B, C, D, E, F, G])(fun: (A, B, C, D, E, F, G) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor7`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor7`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

53. #### def forAll [A, B, C, D, E, F] (table: TableFor6[A, B, C, D, E, F])(fun: (A, B, C, D, E, F) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor6`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor6`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

54. #### def forAll [A, B, C, D, E] (table: TableFor5[A, B, C, D, E])(fun: (A, B, C, D, E) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor5`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor5`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

55. #### def forAll [A, B, C, D] (table: TableFor4[A, B, C, D])(fun: (A, B, C, D) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor4`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor4`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

56. #### def forAll [A, B, C] (table: TableFor3[A, B, C])(fun: (A, B, C) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor3`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor3`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

57. #### def forAll [A, B] (table: TableFor2[A, B])(fun: (A, B) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor2`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor2`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

58. #### def forAll [A] (table: TableFor1[A])(fun: (A) ⇒ Unit): Unit

    Performs a property check by applying the specified property check function to each row of the specified `TableFor1`.

    Performs a property check by applying the specified property check function to each row of the specified `TableFor1`.

    table

      the table of data with which to perform the property check

    fun

      the property check function to apply to each row of data in the table

    Definition Classes
      TableDrivenPropertyChecks

59. #### implicit val generatorDrivenConfig : PropertyCheckConfig

    Implicit `PropertyCheckConfig` value providing default configuration values.

    Implicit `PropertyCheckConfig` value providing default configuration values.

    Attributes
      implicit
    Definition Classes
      Configuration

60. #### def getClass (): java.lang.Class[_]

    Attributes
      final
    Definition Classes
      AnyRef

61. #### def hashCode (): Int

    Definition Classes
      AnyRef → Any

62. #### def isInstanceOf [T0] : Boolean

    Attributes
      final
    Definition Classes
      Any

63. #### def maxDiscarded (value: Int): MaxDiscarded

    Returns a `MaxDiscarded` property check configuration parameter containing the passed value, which specifies the maximum number of discarded property evaluations allowed during property evaluation.

    Returns a `MaxDiscarded` property check configuration parameter containing the passed value, which specifies the maximum number of discarded property evaluations allowed during property evaluation.

    Definition Classes
      Configuration

64. #### def maxSize (value: Int): MaxSize

    Returns a `MaxSize` property check configuration parameter containing the passed value, which specifies the maximum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

    Returns a `MaxSize` property check configuration parameter containing the passed value, which specifies the maximum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

    Note that the maximum size should be greater than or equal to the minimum size. This requirement is enforced by the `PropertyCheckConfig` constructor and the `forAll` methods of traits `PropertyChecks` and `Checkers`. In other words, it is enforced at the point both a maximum and minimum size are provided together.

    Definition Classes
      Configuration

65. #### def minSize (value: Int): MinSize

    Returns a `MinSize` property check configuration parameter containing the passed value, which specifies the minimum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

    Returns a `MinSize` property check configuration parameter containing the passed value, which specifies the minimum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists).

    Definition Classes
      Configuration

66. #### def minSuccessful (value: Int): MinSuccessful

    Returns a `MinSuccessful` property check configuration parameter containing the passed value, which specifies the minimum number of successful property evaluations required for the property to pass.

    Returns a `MinSuccessful` property check configuration parameter containing the passed value, which specifies the minimum number of successful property evaluations required for the property to pass.

    Definition Classes
      Configuration

67. #### def ne (arg0: AnyRef): Boolean

    Attributes
      final
    Definition Classes
      AnyRef

68. #### def notify (): Unit

    Attributes
      final
    Definition Classes
      AnyRef

69. #### def notifyAll (): Unit

    Attributes
      final
    Definition Classes
      AnyRef

70. #### def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
      final
    Definition Classes
      AnyRef

71. #### def toString (): String

    Definition Classes
      AnyRef → Any

72. #### def wait (): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

73. #### def wait (arg0: Long, arg1: Int): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

74. #### def wait (arg0: Long): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

75. #### def whenever (condition: Boolean)(fun: ⇒ Unit): Unit

    Evaluates the passed code block if the passed boolean condition is true, else throws `DiscardedEvaluationException`.

    Evaluates the passed code block if the passed boolean condition is true, else throws `DiscardedEvaluationException`.

    The `whenever` method can be used inside property check functions to discard invocations of the function with data for which it is known the property would fail. For example, given the following `Fraction` class:

        class Fraction(n: Int, d: Int) {

          require(d != 0)
          require(d != Integer.MIN_VALUE)
          require(n != Integer.MIN_VALUE)

          val numer = if (d < 0) -1 * n else n
          val denom = d.abs

          override def toString = numer + " / " + denom
        }

        import org.scalatest.prop.TableDrivenPropertyChecks._

        val fractions =
          Table(
            ("n", "d"),
            (  1,   2),
            ( -1,   2),
            (  1,  -2),
            ( -1,  -2),
            (  3,   1),
            ( -3,   1),
            ( -3,   0),
            (  3,  -1),
            (  3,  Integer.MIN_VALUE),
            (Integer.MIN_VALUE, 3),
            ( -3,  -1)
          )

    Imagine you wanted to check a property against this class with data that includes some value that are rejected by the constructor, such as a denominator of zero, which should result in an `IllegalArgumentException`. You could use `whenever` to discard any rows in the `fraction` that represent illegal arguments, like this:

        import org.scalatest.matchers.ShouldMatchers._

        forAll (fractions) { (n: Int, d: Int) =>

          whenever (d != 0 && d != Integer.MIN_VALUE
              && n != Integer.MIN_VALUE) {

            val f = new Fraction(n, d)

            if (n < 0 && d < 0 || n > 0 && d > 0)
              f.numer should be > 0
            else if (n != 0)
              f.numer should be < 0
            else
              f.numer should be === 0

            f.denom should be > 0
          }
        }

    In this example, rows 6, 8, and 9 have values that would cause a false to be passed to `whenever`. (For example, in row 6, `d` is 0, which means `d` `!=` `0` will be false.) For those rows, `whenever` will throw `DiscardedEvaluationException`, which will cause the `forAll` method to discard that row.

    condition

      the boolean condition that determines whether `whenever` will evaluate the `fun` function (`condition` is true) or throws `DiscardedEvaluationException` (`condition` is false)

    fun

      the function to evaluate if the specified `condition` is true

    Definition Classes
      Whenever

76. #### def workers (value: Int): Workers

    Returns a `Workers` property check configuration parameter containing the passed value, which specifies the number of worker threads to use when evaluating a property.

    Returns a `Workers` property check configuration parameter containing the passed value, which specifies the number of worker threads to use when evaluating a property.

    Definition Classes
      Configuration

### Inherited from GeneratorDrivenPropertyChecks

### Inherited from Configuration

### Inherited from TableDrivenPropertyChecks

### Inherited from Tables

### Inherited from Whenever

### Inherited from AnyRef

### Inherited from Any