doc / ch.tutteli.atrium.logic.creating.charsequence.contains / CharSequenceContains / EntryPointStepLogic

EntryPointStepLogic

interface EntryPointStepLogic<T : CharSequence, out S : CharSequenceContains.SearchBehaviour> : Contains.EntryPointStepLogic<T, S>

The entry point of the contract on the logic level, containing the container -- i.e. the subject of the assertion for which the sophisticated contain assertion should be created -- as well as the chosen searchBehaviour.

The searchBehaviour might me modified in which case it is recommended that a new EntryPointStep is created (retain immutability).

Inherited Properties

container

abstract val container: AssertionContainer<T>

The AssertionContainer from which this building process started and to which the resulting Assertion should be appended.

searchBehaviour

abstract val searchBehaviour: S

The chosen SearchBehaviour.

Extension Properties

ignoringCase

val <T : CharSequence, S : NoOpSearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.ignoringCase: CharSequenceContains.EntryPointStep<T, IgnoringCaseSearchBehaviour>

Extension Functions

atLeastCheckerStep

fun <T : CharSequence, S : CharSequenceContains.SearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.atLeastCheckerStep(times: Int, nameContainsNotFun: String, atLeastCall: (Int) -> String): AtLeastCheckerStep<T, S>

atMostCheckerStep

fun <T : CharSequence, S : CharSequenceContains.SearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.atMostCheckerStep(times: Int, nameContainsNotFun: String, atMostCall: (Int) -> String, atLeastCall: (Int) -> String, exactlyCall: (Int) -> String): AtMostCheckerStep<T, S>

exactlyCheckerStep

fun <T : CharSequence, S : CharSequenceContains.SearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.exactlyCheckerStep(times: Int, nameContainsNotFun: String, exactlyCall: (Int) -> String): ExactlyCheckerStep<T, S>

notCheckerStep

fun <T : CharSequence, S : CharSequenceContains.SearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.notCheckerStep(): NotCheckerStep<T, S>

notOrAtMostCheckerStep

fun <T : CharSequence, S : CharSequenceContains.SearchBehaviour> CharSequenceContains.EntryPointStepLogic<T, S>.notOrAtMostCheckerStep(times: Int, nameContainsNotFun: String, notOrAtMostCall: (Int) -> String): NotOrAtMostCheckerStep<T, S>

toVarArg

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

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

Inheritors

EntryPointStepInternal

interface EntryPointStepInternal<T : CharSequence, out S : CharSequenceContains.SearchBehaviour> : CharSequenceContains.EntryPointStep<T, S>, CharSequenceContains.EntryPointStepLogic<T, S>

Sole purpose of this interface is to hide EntryPointStepLogic from newcomers which usually do not have to deal with this type and to keep the API clean.