doc / ch.tutteli.atrium.assertions / IAssertionGroup

IAssertionGroup

interface IAssertionGroup : IAssertion

The base interface for IAssertion groups, providing a default implementation for IAssertion.holds which returns true if all its assertions hold.

Properties

assertions

abstract val assertions: List<IAssertion>

The assertions of this group, which are defined for subject.

name

abstract val name: ITranslatable

The name of the group.

subject

abstract val subject: Any

The subject for which the assertions are defined.

type

abstract val type: IAssertionGroupType

The type of the group, e.g. RootAssertionGroupType.

Functions

holds

open fun holds(): <ERROR CLASS>

Holds if all its assertions hold.

Inheritors

AssertionGroup

data class AssertionGroup : IAssertionGroup

Represents a group of IAssertions -- it has a certain type, a name, a subject and of course assertions.

EmptyNameAndSubjectAssertionGroup

abstract class EmptyNameAndSubjectAssertionGroup : IAssertionGroup

Represents a base class for IAssertionGroups which have an empty name and subject.

FixHoldsAssertionGroup

data class FixHoldsAssertionGroup : IAssertionGroup

Represents a group of IAssertions -- it has a certain type, a name, a subject, assertions and a fixed value for holds which does not depend on assertions (usually indirectly).

LazyThreadUnsafeAssertionGroup

class LazyThreadUnsafeAssertionGroup : IAssertionGroup

Represents an IAssertionGroup which is evaluated lazily where the lazy loading is not thread safe.