Configuration

org.scalatest.prop.Configuration
See theConfiguration companion object

Trait providing methods and classes used to configure property checks provided by the the forAll methods of trait GeneratorDrivenPropertyChecks (for ScalaTest-style property checks) and the check methods of trait Checkers (for ScalaCheck-style property checks).

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Type members

Classlikes

case class MaxDiscardedFactor(value: PosZDouble) extends PropertyCheckConfigParam

A PropertyCheckConfigParam that specifies how many generated values may be discarded, as a multiple of the successful attempts, before the property check is considered to be org.scalatest.prop.PropertyCheckResult.Exhausted.

A PropertyCheckConfigParam that specifies how many generated values may be discarded, as a multiple of the successful attempts, before the property check is considered to be org.scalatest.prop.PropertyCheckResult.Exhausted.

In GeneratorDrivenPropertyChecks, a property evaluation is discarded if it throws DiscardedEvaluationException, which is produced by a whenever clause that evaluates to false. For example, consider this ScalaTest property check:

// forAll defined in GeneratorDrivenPropertyChecks
forAll { (n: Int) =>
 whenever (n > 0) {
   doubleIt(n) should equal (n * 2)
 }
}

In the above code, whenever a non-positive n is passed, the property function will complete abruptly with DiscardedEvaluationException.

Similarly, in Checkers, a property evaluation is discarded if the expression to the left of ScalaCheck's ==> operator is false. Here's an example:

// forAll defined in Checkers
forAll { (n: Int) =>
 (n > 0) ==> doubleIt(n) == (n * 2)
}

For either kind of property check, MaxDiscardedFactor indicates the maximum fraction of total tests that may be discarded, relative to the number of successful tests. For example, if this is set to 4.0, and you are running 100 tests, it may discard up to 400 tries before considering the test to be org.scalatest.prop.PropertyCheckResult.Exhausted.

Value parameters

value

the permitted number of discarded tests, as a multiple of successful ones.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class MinSize(value: PosZInt) extends PropertyCheckConfigParam

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).

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).

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class MinSuccessful(value: PosInt) extends PropertyCheckConfigParam

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

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

Once this many evaluations have passed, the property will return PropertyCheckResult.Success.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed abstract class PropertyCheckConfigParam extends Product, Serializable

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

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

The subclasses of this abstract class are used to pass configuration information to the forAll methods of traits PropertyChecks (for ScalaTest-style property checks) and Checkers(for ScalaCheck-style property checks).

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
class MinSize
class SizeRange
class Workers
case class PropertyCheckConfiguration(minSuccessful: PosInt, maxDiscardedFactor: PosZDouble, minSize: PosZInt, sizeRange: PosZInt, workers: PosInt)

Describes the configuration to use when evaluating a property.

Describes the configuration to use when evaluating a property.

Value parameters

maxDiscardedFactor

how many generated values may be discarded, as a multiple of the successful attempts, before the property check is considered to be org.scalatest.prop.PropertyCheckResult.Exhausted; see MaxDiscardedFactor

minSize

the minimum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists); see MinSize

minSuccessful

the minimum number of successful property evaluations required for the property to pass; see MinSuccessful

sizeRange

the maximum size parameter to provide to ScalaCheck, which it will use when generating objects for which size matters (such as strings or lists); see SizeRange

workers

number of worker threads to use when evaluating a property; see Workers

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Internal utility functions for configuration management.

Internal utility functions for configuration management.

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class SizeRange(value: PosZInt) extends PropertyCheckConfigParam

A PropertyCheckConfigParam that (with minSize) 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).

A PropertyCheckConfigParam that (with minSize) 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 size range is added to minSize in order to calculate the maximum size passed to ScalaCheck. Using a range allows compile-time checking of a non-negative number being specified.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Workers(value: PosInt) extends PropertyCheckConfigParam

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

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

Property evaluation runs on a single thread by default, but may run multiple threads if desired. If so, the evaluation will generally run faster. However, be careful not to use this if there is any risk of deadlocks, race conditions, or other hazards of multi-threaded code in evaluating this property or the code under test.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Value members

Concrete methods

Given some optional PropertyCheckConfigParams and a PropertyCheckConfiguration, compute the resulting Configuration.Parameter.

Given some optional PropertyCheckConfigParams and a PropertyCheckConfiguration, compute the resulting Configuration.Parameter.

This function deals with resolving the various forms of these configuration values, into a consistent form suitable for using in properties.

Duplicate PropertyCheckConfigParam entries are not permitted in the configParams list.

TODO: should this function be public? It feels like an internal implementation detail -- I think it should be private.

Value parameters

c

a configuration object, describing how to run property evaluations

configParams

optionally, some parameters that differ from the provided c

Attributes

Returns

a fully-set-up Configuration.Parameter object, ready to evaluate properties with.

def maxDiscardedFactor(value: PosZDouble): MaxDiscardedFactor

Returns a MaxDiscardedFactor property check configuration parameter containing the passed value, which specifies the factor of discarded property evaluations allowed during property evaluation.

Returns a MaxDiscardedFactor property check configuration parameter containing the passed value, which specifies the factor of discarded property evaluations allowed during property evaluation.

Attributes

def minSize(value: PosZInt): 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).

Attributes

def minSuccessful(value: PosInt): 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.

Attributes

def sizeRange(value: PosZInt): SizeRange

Returns a SizeRange property check configuration parameter containing the passed value, that (with minSize) 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 SizeRange property check configuration parameter containing the passed value, that (with minSize) 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 size range is added to minSize in order to calculate the maximum size passed to ScalaCheck. Using a range allows compile-time checking of a non-negative number being specified.

Attributes

def workers(value: PosInt): 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.

Attributes

Implicits

Implicits

Implicit PropertyCheckConfig value providing default configuration values.

Implicit PropertyCheckConfig value providing default configuration values.

Attributes