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.
the permitted number of discarded tests, as a multiple of successful ones.
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).
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.
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).
Describes the configuration to use when evaluating a property.
Describes the configuration to use when evaluating a property.
the minimum number of successful property evaluations required for the property to pass; see MinSuccessful
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
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
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
number of worker threads to use when evaluating a property; see Workers
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.
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.
Internal utility functions for configuration management.
Implicit PropertyCheckConfig
value providing default configuration values.
Implicit PropertyCheckConfig
value providing default configuration values.
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.
optionally, some parameters that differ from the provided c
a fully-set-up Configuration.Parameter object, ready to evaluate properties with.
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.
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).
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.
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.
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.
Trait providing methods and classes used to configure property checks provided by the the
forAll
methods of traitGeneratorDrivenPropertyChecks
(for ScalaTest-style property checks) and thecheck
methods of traitCheckers
(for ScalaCheck-style property checks).