AssertionContainer

Represents the extension point of the logic level for subjects of type T.

In contrast to expectation functions defined for Expect which usually return Expect, functions defined for AssertionContainer return Assertion so that they can be appended to whatever we want.

Parameters

T

The type of the subject of this expectation.

Inheritors

Properties

Link copied to clipboard

Do not use yet, this is experimental

Link copied to clipboard
abstract val maybeSubject: Option<T>

Either Some wrapping the subject of an Assertion or None in case a previous subject transformation could not be carried out.

Functions

Link copied to clipboard
abstract fun append(assertion: Assertion): Expect<T>

Appends the given assertion to this container and returns an Expect which includes it.

Link copied to clipboard
abstract fun appendAsGroup(assertionCreator: Expect<T>.() -> Unit): Expect<T>

Appends the Assertions the given assertionCreator creates to this container and returns an Expect which includes them.

Link copied to clipboard
open fun createAndAppend(description: Translatable, expected: Any?, test: (T) -> Boolean): Expect<T>
open fun createAndAppend(description: String, expected: Any?, test: (T) -> Boolean): Expect<T>

Creates a DescriptiveAssertion based on the given description, expected and test and appends it to the container.

Link copied to clipboard
abstract fun <I : Any> getImpl(kClass: KClass<I>, defaultFactory: () -> I): I

Do not use yet, this is experimental and might change or be removed without prior notice.