doc / ch.tutteli.atrium.logic.creating.basic.contains / Contains


interface Contains

Defines the basic contract for sophisticated contains assertion builders.

The entry point for the contract constitutes a Contains.EntryPointStep. A builder typically allows a user to choose a desired SearchBehaviour, one or more Checkers and uses an Creator to finish the building process.



interface Checker

Represents a check for the search result such as: the object is contained exactly once in the input of the search.


interface CheckerStep<T : Any, out S : Contains.SearchBehaviour, out C : Contains.Checker, out B : Contains.EntryPointStep<T, S>>

The step of choosing/defining Checkers.


interface CheckerStepLogic<T : Any, out S : Contains.SearchBehaviour, out C : Contains.Checker, out B : Contains.EntryPointStepLogic<T, S>>

The step of choosing/defining Checkers on the logic level.


interface Creator<T, in SC>

Represents the final step of a sophisticated contains assertion builder which creates the AssertionGroup as such.


interface EntryPointStep<T : Any, out S : Contains.SearchBehaviour>

The entry point of the contract. Use _logic to retrieve the EntryPointStepLogic counterpart in case you want to extend the building process.


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

The entry point of the contract, 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.


interface SearchBehaviour

Represents a search behaviour but leaves it up to the Creator how this behaviour is implemented -- yet, it provides a method to decorate a description (a Translatable) in order that it reflects the search behaviour.