atrium-api-cc-en_UK / ch.tutteli.atrium.api.cc.en_UK / ch.tutteli.atrium.assertions.iterable.contains.builders.IterableContainsBuilder / entries

entries

fun <E : Any, T : Iterable<E>> IterableContainsBuilder<E, T, IterableContainsInAnyOrderOnlySearchBehaviour>.entries(assertionCreator: Assert<E>.() -> Unit, vararg otherAssertionCreators: Assert<E>.() -> Unit): AssertionPlant<T>

Finishes the specification of the sophisticated contains assertion where the entry needs to be contained in the Iterable which holds all assertions assertionCreator might create -- equally an entry for each further otherAssertionCreators needs to be contained in the Iterable where it does not matter in which order the entries appear.

Notice, that a first-wins strategy applies which means your assertionCreator functions -- which kind of serve as identification functions -- should be ordered in such a way that the most specific identification function appears first, not that a less specific function wins. For instance, given a setOf(1, 2) you should not search for entries({ isGreaterThan(0) }, { toBe(1) }) but for entries({ toBe(1) }, { isGreaterThan(0) }) otherwise isGreaterThan(0) matches 1 before toBe(1) would match it. As a consequence toBe(1) could only match the entry which is left -- in this case 2 -- and of course this would fail.

Parameters

assertionCreator - The lambda function which creates the assertions which the entry we are looking for has to hold; or in other words, the function which defines whether an entry is the one we are looking for or not. otherAssertionCreators - Additional lambda functions which each kind of identify (separately) an entry which we are looking for.

Exceptions

AssertionError - Might throw an AssertionError if the assertion made is not correct.

Return
The AssertionPlant for which the assertion was built to support a fluent API.

fun <E : Any, T : Iterable<E>> IterableContainsBuilder<E, T, IterableContainsInOrderOnlySearchBehaviour>.entries(assertionCreator: Assert<E>.() -> Unit, vararg otherAssertionCreators: Assert<E>.() -> Unit): AssertionPlant<T>

Finishes the specification of the sophisticated contains assertion where the entry needs to be contained in the Iterable which holds all assertions assertionCreator might create -- equally an entry for each further otherAssertionCreators, following the specified order, needs to be contained in the Iterable

Parameters

assertionCreator - The lambda function which creates the assertions which the entry we are looking for has to hold; or in other words, the function which defines whether an entry is the one we are looking for or not. otherAssertionCreators - Additional lambda functions which each kind of identify (separately) an entry which we are looking for.

Exceptions

AssertionError - Might throw an AssertionError if the assertion made is not correct.

Return
The AssertionPlant for which the assertion was built to support a fluent API.