doc / ch.tutteli.atrium.domain.builders.creating.collectors / AssertionCollectorBuilder / collect

collect

inline fun <T> collect(maybeSubject: Option<T>, noinline assertionCreator: Expect<T>.() -> Unit): Assertion

Overrides AssertionCollector.collect

Use this function if you want to make Assertions about a feature or you perform a type transformation or any other action which results in an assertion container being created and you do not require this resulting container.

Or in other words, you do not want to make further assertions about the resulting subject in the resulting sub assertion container.

Parameters

maybeSubject - Either Some wrapping the subject of the current assertion or None in case a previous subject change was not successful - used as subject for the given assertionCreator.

assertionCreator - A lambda which defines the assertions for the feature.

Exceptions

IllegalArgumentException - in case the given assertionCreator did not create a single assertion.

Return
The collected assertions as an AssertionGroup with an InvisibleAssertionGroupType.

inline fun <T, A : BaseAssertionPlant<T, A>, C : BaseCollectingAssertionPlant<T, A, C>> collect(noinline subjectProvider: () -> T, noinline collectingPlantFactory: (() -> T) -> C, noinline assertionCreator: C.() -> Unit): AssertionGroup

Overrides AssertionCollector.collect


Deprecated: Switch from Assert to Expect and use the other overload; will be removed with 1.0.0

Use this function if you want to make Assertion about a feature or you perform a type transformation or any other action which results in a sub-BaseAssertionPlant being created and you do not require this resulting plant.

Or in other words, you do not want to make further assertions about the resulting subject in the resulting sub assertion plant.

This function can be useful in several cases. For instance:

Parameters

subjectProvider - Provides the subject which is used as CollectingAssertionPlantNullable.subject.

collectingPlantFactory - The factory method which creates the appropriate collecting plant which is suitable for the given assertionCreator.

assertionCreator - A lambda which typically creates a sub AssertionPlant and adds assertions to it. For instance, if you create a feature assertion or a type transformation assertion, you will typically end up creating a sub assertion plant which delegates created Assertions to the CollectingAssertionPlant.

Exceptions

IllegalArgumentException - in case the given assertionCreator did not create a single assertion, did not pass it to the BaseCollectingAssertionPlant respectively.

Return
The collected assertions as an AssertionGroup with an InvisibleAssertionGroupType.