SupplyToSyntaxTuple2

com.sageserpent.americium.tupleTrials$.Tuple2Trials.SupplyToSyntaxTuple2
trait SupplyToSyntaxTuple2 extends SupplyToSyntaxTuple2[Case1, Case2]

Attributes

Graph
Supertypes
trait SupplyToSyntaxTuple2[Case1, Case2]
trait SupplyToSyntax[(Case1, Case2)]
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

override def asIterator(): Iterator[(Case1, Case2)]

Attributes

Definition Classes
def supplyTo(consumer: (Case1, Case2) => Unit): Unit
override def supplyTo(consumer: ((Case1, Case2)) => Unit): Unit

Consume trial cases until either there are no more or an exception is thrown by consumer. If an exception is thrown, attempts will be made to shrink the trial case that caused the exception to a simpler case that throws an exception - the specific kind of exception isn't necessarily the same between the first exceptional case and the final simplified one. The exception from the simplified case (or the original exceptional case if it could not be simplified) is wrapped in an instance of TrialException which also contains the Case that provoked the exception.

Consume trial cases until either there are no more or an exception is thrown by consumer. If an exception is thrown, attempts will be made to shrink the trial case that caused the exception to a simpler case that throws an exception - the specific kind of exception isn't necessarily the same between the first exceptional case and the final simplified one. The exception from the simplified case (or the original exceptional case if it could not be simplified) is wrapped in an instance of TrialException which also contains the Case that provoked the exception.

Value parameters

consumer

An operation that consumes a Case, and may throw an exception.

Attributes

Definition Classes
override def testIntegrationContexts(): Iterator[TestIntegrationContext[(Case1, Case2)]]

Attributes

Definition Classes
override def withComplexityLimit(complexityLimit: Int): SupplyToSyntax[(Case1, Case2)]

The maximum permitted complexity when generating a case.

The maximum permitted complexity when generating a case.

Attributes

Note

Complexity is something associated with the production of an instance of Case when a Trials is supplied to some test consumer. It ranges from one up to (and including) the complexityLimit and captures some sense of the case being more elaborately constructed as it increases - as an example, the use of flat-mapping to combine inputs from multiple trials instances drives the complexity up for each flatmap stage. In practice, this results in larger collection instances having greater complexity. Deeply recursive trials also result in high complexity.

Definition Classes
override def withSeed(seed: Long): SupplyToSyntaxTuple2

Attributes

Definition Classes
override def withShrinkageAttemptsLimit(shrinkageAttemptsLimit: Int): SupplyToSyntax[(Case1, Case2)]

The maximum number of shrinkage attempts when shrinking a case. Setting this to zero disables shrinkage and will thus yield the original failing case.

The maximum number of shrinkage attempts when shrinking a case. Setting this to zero disables shrinkage and will thus yield the original failing case.

Attributes

Definition Classes
override def withShrinkageStop(shrinkageStop: () => (Case1, Case2)): SupplyToSyntaxTuple2

Attributes

See also

ShrinkageStop

Definition Classes

Abstract fields

protected val supplyToSyntax: SupplyToSyntax[(Case1, Case2)]