TextListBasedAssertionGroupFormatter

Represents an AssertionFormatter which formats AssertionGroups with type T by using the given assertionPairFormatter to format the group header and using the given bulletPoint (see constructor) to prefix the AssertionGroup.assertions.

Its usage is intended for text output (e.g. to the console).

Parameters

bulletPoint

The bullet point (might also be more than one character) which shall be used.

assertionFormatterController

The controller to which this formatter gives back the control when it comes to format children of an AssertionGroup.

assertionPairFormatter

The formatter which is used to format assertion pairs.

clazz

The AssertionGroupType which the concrete subclass canFormat.

Inheritors

Constructors

Link copied to clipboard
constructor(bulletPoint: String, assertionFormatterController: AssertionFormatterController, assertionPairFormatter: AssertionPairFormatter, clazz: KClass<T>)

Represents an AssertionFormatter which formats AssertionGroups with type T by putting each assertion on an own line prefixed with a bullet point.

Functions

Link copied to clipboard
override fun canFormat(assertion: Assertion): Boolean

Returns true if the given assertion is an AssertionGroup and its type is T or a sub type.

Link copied to clipboard
open fun format(assertion: Assertion, parameterObject: AssertionFormatterParameterObject)

Formats the given assertion and appends the result to the sb of the given parameterObject.

Link copied to clipboard
override fun formatGroup(assertionGroup: AssertionGroup, parameterObject: AssertionFormatterParameterObject, formatAssertions: (AssertionFormatterParameterObject, (Assertion) -> Unit) -> Unit)

Checks whether assertionGroup is T or a sub type and if so, calls formatGroupHeaderAndGetChildParameterObject and uses the resulting child-AssertionFormatterParameterObject to format AssertionGroup.assertions.

Link copied to clipboard
override fun formatNonGroup(assertion: Assertion, parameterObject: AssertionFormatterParameterObject): Nothing

Always throws an UnsupportedOperationException, because this AssertionFormatter can only format AssertionGroups.