doc / ch.tutteli.atrium.logic.creating.iterable.contains / IterableLikeContains / CheckerStep

CheckerStep

interface CheckerStep<E, T, out S : IterableLikeContains.SearchBehaviour> : Contains.CheckerStep<T, S, IterableLikeContains.Checker, IterableLikeContains.EntryPointStep<E, T, S>>

The step of choosing/defining Checkers.

Extension Properties

_logic

val <E, T : Any, S : IterableLikeContains.SearchBehaviour> IterableLikeContains.CheckerStep<E, T, S>._logic: IterableLikeContains.CheckerStepLogic<E, T, S>

Entry point to the logic level of Atrium -- which is one level deeper than the API -- within the building process of a sophisticated contains assertion for Iterable.

Extension Functions

_logicAppend

fun <E, T : Any, S : IterableLikeContains.SearchBehaviour> IterableLikeContains.CheckerStep<E, T, S>._logicAppend(factory: IterableLikeContains.CheckerStepLogic<E, T, S>.() -> Assertion): Expect<T>

Appends the Assertion the given factory creates based on this IterableLikeContains.CheckerStep.

elementsOf

fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.elementsOf(expectedIterableLike: IterableLike): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain all elements of the expectedIterableLike where it does not matter in which order they appear.

elementsOf

infix fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.elementsOf(expectedIterableLike: IterableLike): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain all elements of the expectedIterableLike where it does not matter in which order they appear.

entries

fun <E : Any, T> IterableLikeContains.CheckerStep<out E?, T, InAnyOrderSearchBehaviour>.entries(assertionCreatorOrNull: (Expect<E>.() -> Unit)?, vararg otherAssertionCreatorsOrNulls: (Expect<E>.() -> Unit)?): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain an entry for assertionCreatorOrNull as well as for the otherAssertionCreatorsOrNulls where it does not matter in which order they appear -- an entry is contained if it either holds all assertions assertionCreatorOrNull creates or needs to be null in case assertionCreatorOrNull is defined as null.

entry

fun <E : Any, T> IterableLikeContains.CheckerStep<out E?, T, InAnyOrderSearchBehaviour>.entry(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain an entry which either holds all assertions assertionCreatorOrNull creates or needs to be null in case assertionCreatorOrNull is defined as null.

entry

infix fun <E : Any, T> IterableLikeContains.CheckerStep<out E?, T, InAnyOrderSearchBehaviour>.entry(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain an entry which either holds all assertions assertionCreatorOrNull creates or needs to be null in case assertionCreatorOrNull is defined as null.

the

infix fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.the(values: Values<E>): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain the expected values where it does not matter in which order they appear.

infix fun <E : Any, T> IterableLikeContains.CheckerStep<out E?, T, InAnyOrderSearchBehaviour>.the(entries: Entries<E>): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain an entry for each in entries where it does not matter in which order they appear -- an entry is contained if it either holds all assertions entries.assertionCreatorOrNull creates or needs to be null in case entries.assertionCreatorOrNull is defined as null.

value

fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.value(expected: E): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain the expected value.

value

infix fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.value(expected: E): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain the expected value.

values

fun <E, T> IterableLikeContains.CheckerStep<E, T, InAnyOrderSearchBehaviour>.values(expected: E, vararg otherExpected: E): Expect<T>

Finishes the specification of the sophisticated contains assertion where the subject (an IterableLike) needs to contain the expected value as well as the otherExpected values where it does not matter in which order they appear.

Inheritors

CheckerStepInternal

interface CheckerStepInternal<E, T, out S : IterableLikeContains.SearchBehaviour> : IterableLikeContains.CheckerStep<E, T, S>, IterableLikeContains.CheckerStepLogic<E, T, S>

Sole purpose of this interface is to hide CheckerStepLogic from newcomers which usually don't have to deal with this type and to keep the API clean.

NotCheckerStep

interface NotCheckerStep<E, T, out S : IterableLikeContains.SearchBehaviour> : IterableLikeContains.CheckerStep<E, T, S>

Represents the extension point for another step after a contains not at all-check within a sophisticated contains assertion building process for Iterable.

NotOrAtMostCheckerStep

interface NotOrAtMostCheckerStep<E, T, out S : IterableLikeContains.SearchBehaviour> : IterableLikeContains.CheckerStep<E, T, S>

Represents the extension point for another step after a contains not or at most-check within a sophisticated contains assertion building process for Iterable.

WithTimesCheckerStep

interface WithTimesCheckerStep<E, T, out S : IterableLikeContains.SearchBehaviour> : IterableLikeContains.CheckerStep<E, T, S>

A IterableLikeContains.CheckerStep which is used to choose a IterableLikeContains.Checker which is based on a number of times.