interface Contains
Defines the basic contract for sophisticated contains
assertion builders.
The entry point for the contract constitutes a Contains.Builder. 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 Builder<out T : Any, out S : Contains.SearchBehaviour>
The entry point of the contract, containing the subjectProvider -- i.e. the subject of the assertion
for which the sophisticated |
|
interface Checker
Represents a check for the search result such as: the object is contained exactly once in the input of the search. |
|
interface CheckerOption<out T : Any, out S : Contains.SearchBehaviour, out C : Contains.Checker, out B : Contains.Builder<T, S>>
The step of choosing/defining Checkers. |
|
interface Creator<in T : Any, in SC>
Represents the final step of a sophisticated |
|
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. |