doc / ch.tutteli.atrium.logic.creating.iterable.contains.steps / WithTimesCheckerStepInternal

WithTimesCheckerStepInternal

interface WithTimesCheckerStepInternal<E, T, out S : IterableLikeContains.SearchBehaviour> : WithTimesCheckerStep<E, T, S>, WithTimesCheckerStepLogic<E, T, S>, IterableLikeContains.CheckerStepInternal<E, T, S>

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

Moreover, this keeps the API clean and does not pollute it with things like times, containsBuilder etc.

See https://github.com/robstoll/atrium-roadmap/wiki/Requirements#personas for more information about the personas.

Inherited Properties

times

abstract val times: Int

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.

butAtMostCheckerStep

fun <E, T, S : IterableLikeContains.SearchBehaviour> WithTimesCheckerStepLogic<E, T, S>.butAtMostCheckerStep(times: Int, nameContainsNotFun: String, atLeastButAtMostCall: (Int, Int) -> String, atLeastCall: (Int) -> String, butAtMostCall: (Int) -> String, exactlyCall: (Int) -> String, atMostCall: (Int) -> String): ButAtMostCheckerStep<E, T, S>

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 an entry shall be searched which either holds all assertions assertionCreatorOrNull creates or needs to be null in case assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the otherAssertionCreatorsOrNulls.

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 an entry shall be searched 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 an entry shall be searched 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 expected values shall be searched within the IterableLike.

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 an entry shall be searched which either holds all assertions entries.assertionCreatorOrNull creates or needs to be null in case entries.assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the entries.otherAssertionCreatorsOrNulls.

toVarArg

fun <T> IterableLikeContains.CheckerStepLogic<*, *, *>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>

Transforms the given IterableLike to Pair<T, Array<out T>> with the intend that it can be easily used for a function requiring T, vararg T

value

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

Finishes the specification of the sophisticated contains assertion where the expected value shall be searched within the IterableLike.

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 expected value shall be searched within the IterableLike.

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 expected value as well as the otherExpected values (if given) shall be searched within the IterableLike.