doc / ch.tutteli.atrium.creating / ExpectInternal

ExpectInternal

interface ExpectInternal<T> : Expect<T>, AssertionContainer<T> (source)

Sole purpose of this interface is to hide AssertionContainer from newcomers which usually don't have to deal with this.

Moreover, we separate Expect from AssertionContainer so that we can provide extension functions for AssertionContainer which are more or less identical to the ones defined for api-fluent but don't return Expect but Assertion etc.

See https://github.com/robstoll/atrium-roadmap/wiki/Requirements#personas for more information about the personas.

Inherited Properties

components

abstract val components: ComponentFactoryContainer

Do not use yet, this is experimental

maybeSubject

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.

Inherited Functions

append

abstract fun append(assertion: Assertion): Expect<T>

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

appendAsGroup

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.

createAndAppend

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

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

getImpl

abstract fun <I : Any> getImpl(kClass: KClass<I>, defaultFactory: () -> I): I

Do not use yet, this is experimental and will definitely change in 0.17.0 or 0.18.0.

Extension Properties

_logic

val <T> Expect<T>._logic: AssertionContainer<T>

Entry point to the logic level of Atrium -- which is one level deeper than the API -- on which assertion functions do not return Expects but Assertions and the like.

and

val <T> Expect<T>.and: Expect<T>

Can be used to separate single assertions.

changeSubject

val <T> AssertionContainer<T>.changeSubject: SubjectChangerBuilder.KindStep<T>

Entry point to use the SubjectChangerBuilder based on this AssertionContainer.

extractFeature

val <T> AssertionContainer<T>.extractFeature: FeatureExtractorBuilder.DescriptionStep<T>

Entry point to use the FeatureExtractorBuilder based on this AssertionContainer.

featureExtractor

val <T> AssertionContainer<T>.featureExtractor: FeatureExtractor

it

val <T> Expect<T>.it: Expect<T>

Inline property referring actually to this and allows writing infix assertions within an assertion group block

iterableLikeToIterableTransformer

val AssertionContainer<*>.iterableLikeToIterableTransformer: IterableLikeToIterableTransformer

its

val <T> Expect<T>.its: Expect<T>

Inline property referring actually to this and allows writing infix assertions within an assertion group block

mapLikeToMapTransformer

val AssertionContainer<*>.mapLikeToMapTransformer: MapLikeToIterablePairTransformer

subjectChanger

val <T> AssertionContainer<T>.subjectChanger: SubjectChanger

Extension Functions

_logicAppend

fun <T> Expect<T>._logicAppend(assertionCreator: AssertionContainer<T>.() -> Assertion): Expect<T>

Appends the Assertion the given assertionCreator creates based on this Expect.

all

fun <E : Any, T : Iterable<E?>> Expect<T>.all(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that either every element holds all assertions created by the assertionCreatorOrNull or that all elements are null in case assertionCreatorOrNull is defined as null.

all

infix fun <E : Any, T : Iterable<E?>> Expect<T>.all(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that either every element holds all assertions created by the assertionCreatorOrNull or that all elements are null in case assertionCreatorOrNull is defined as null.

and

infix fun <T> Expect<T>.and(assertionCreator: Expect<T>.() -> Unit): Expect<T>

Can be used to create a group of sub assertions when using the fluent API.

and

infix fun <T> Expect<T>.and(o: o): Expect<T>

Can be used to separate single assertions.

infix fun <T> Expect<T>.and(assertionCreator: Expect<T>.() -> Unit): Expect<T>

Can be used to create a group of sub assertions when using the fluent API.

any

fun <E : Any, T : Iterable<E?>> Expect<T>.any(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

any

infix fun <E : Any, T : Iterable<E?>> Expect<T>.any(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

asEntries

fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(): Expect<Set<Entry<K, V>>>

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>>.

fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(assertionCreator: Expect<Set<Entry<K, V>>>.() -> Unit): Expect<T>

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>> and expects that it holds all assertions the given assertionCreator creates for it.

asEntries

infix fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(o: o): Expect<Set<Entry<K, V>>>

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>>.

infix fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(assertionCreator: Expect<Set<Entry<K, V>>>.() -> Unit): Expect<T>

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>> and expects that it holds all assertions the given assertionCreator creates for it.

asIterable

fun <E, T : Sequence<E>> Expect<T>.asIterable(): Expect<Iterable<E>>

Turns Expect<Sequence<E>> into Expect<Iterable<E>>.

fun <E, T : Sequence<E>> Expect<T>.asIterable(assertionCreator: Expect<Iterable<E>>.() -> Unit): Expect<T>

Expects that the subject of this expectation holds all assertions the given assertionCreator creates for the subject as Iterable.

asIterable

infix fun <E, T : Sequence<E>> Expect<T>.asIterable(o: o): Expect<Iterable<E>>

Turns Expect<E, T : Sequence<E>> into Expect<Iterable<E>>.

infix fun <E, T : Sequence<E>> Expect<T>.asIterable(assertionCreator: Expect<Iterable<E>>.() -> Unit): Expect<T>

Expects that the subject of this expectation holds all assertions the given assertionCreator creates for the subject as Iterable.

asList

fun <E> Expect<Array<E>>.asList(assertionCreator: Expect<List<E>>.() -> Unit): Expect<Array<E>>
fun <E, T : Iterable<E>> Expect<T>.asList(assertionCreator: Expect<List<E>>.() -> Unit): Expect<T>

Expects that the subject of this expectation holds all assertions the given assertionCreator creates for the subject as List.

asList

infix fun <E> Expect<Array<E>>.asList(assertionCreator: Expect<List<E>>.() -> Unit): Expect<Array<E>>
infix fun <E, T : Iterable<E>> Expect<T>.asList(assertionCreator: Expect<List<E>>.() -> Unit): Expect<T>

Expects that the subject of this expectation holds all assertions the given assertionCreator creates for the subject as List.

asPath

fun <T : File> Expect<T>.asPath(): Expect<Path>

Turns Expect<File> into Expect<Path>.

asPath

infix fun <T : File> Expect<T>.asPath(o: o): Expect<Path>

Turns Expect<File> into Expect<Path>.

because

fun <T> Expect<T>.because(reason: String, assertionCreator: Expect<T>.() -> Unit): Expect<T>

Allows to state a reason for one or multiple assertions for the current subject.

because

infix fun <T> Expect<T>.because(keyWithCreator: KeyWithCreator<String, T>): Expect<T>

Allows to state a reason for one or multiple assertions for the current subject.

cause

fun <TExpected : Throwable> Expect<out Throwable>.cause(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the property Throwable.cause of the subject is a TExpected (the same type or a sub-type) and holds all assertions the given assertionCreator creates for it.

cause

infix fun <TExpected : Throwable> Expect<out Throwable>.cause(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the property Throwable.cause of the subject is a TExpected (the same type or a sub-type) and holds all assertions the given assertionCreator creates for it.

collect

fun <T> AssertionContainer<T>.collect(assertionCreator: Expect<T>.() -> Unit): Assertion

Use this function if you want to make Assertions about a feature or you perform a type transformation or any other action which results in an Expect being created for a different subject and you do not require this resulting Expect.

collectBasedOnSubject

fun <T> AssertionContainer<*>.collectBasedOnSubject(maybeSubject: Option<T>, assertionCreator: Expect<T>.() -> Unit): Assertion

Use this function if you want to make Assertions about a feature or you perform a type transformation or any other action which results in an Expect being created for a different subject and you do not require this resulting Expect.

collectForComposition

fun <T> AssertionContainer<T>.collectForComposition(assertionCreator: Expect<T>.() -> Unit): List<Assertion>

Use this function if you want to collect Assertions and use it as part of another Assertion (e.g. as part of an AssertionGroup).

collectForCompositionBasedOnSubject

fun <T> AssertionContainer<*>.collectForCompositionBasedOnSubject(maybeSubject: Option<T>, assertionCreator: Expect<T>.() -> Unit): List<Assertion>

Use this function if you want to collect Assertions and use it as part of another Assertion (e.g. as part of an AssertionGroup).

contains

fun <T : CharSequence> Expect<T>.contains(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains expected's toString representation and the toString representation of the otherExpected (if given), using a non-disjoint search.

fun <E, T : Iterable<E>> Expect<T>.contains(expected: E, vararg otherExpected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected value and the otherExpected values (if given).

fun <E : Any, T : Iterable<E?>> Expect<T>.contains(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

fun <E : Any, T : Iterable<E?>> Expect<T>.contains(assertionCreatorOrNull: (Expect<E>.() -> Unit)?, vararg otherAssertionCreatorsOrNulls: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the otherAssertionCreatorsOrNulls.

fun <K, V, T : Map<out K, V>> Expect<T>.contains(keyValuePair: Pair<K, V>, vararg otherPairs: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second -- optionally the same assertions are created for the otherPairs.

fun <K, V : Any, T : Map<out K, V?>> Expect<T>.contains(keyValue: KeyValue<K, V>, vararg otherKeyValues: KeyValue<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValue's KeyValue.key with a corresponding value which either holds all assertions keyValue's KeyValue.valueAssertionCreatorOrNull creates or needs to be null in case KeyValue.valueAssertionCreatorOrNull is defined as null -- optionally the same assertions are created for the otherKeyValues.

contains

infix fun <T : CharSequence> Expect<T>.contains(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains the expected's toString representation.

infix fun <T : CharSequence> Expect<T>.contains(values: Values<CharSequenceOrNumberOrChar>): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains the toString representation of the given values using a non-disjoint search.

infix fun <T : CharSequence> Expect<T>.contains(pattern: Regex): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern.

infix fun <T : CharSequence> Expect<T>.contains(regexPatterns: RegexPatterns): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression regexPatterns, using a non-disjoint search.

infix fun <T : CharSequence> Expect<T>.contains(patterns: All<Regex>): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression patterns, using a non-disjoint search.

infix fun <E, T : Iterable<E>> Expect<T>.contains(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.contains(values: Values<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected values.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.contains(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.contains(entries: Entries<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by entries.assertionCreatorOrNull or an entry which is null in case entries.assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the entries.otherAssertionCreatorsOrNulls.

infix fun <E, T : Iterable<E>> Expect<T>.contains(noDuplicates: noDuplicates): Expect<T>

Expects that the subject of this expectation (an Iterable) does not have duplicate elements.

infix fun <K, V, T : Map<out K, V>> Expect<T>.contains(keyValuePair: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second

infix fun <K, V, T : Map<out K, V>> Expect<T>.contains(keyValuePairs: Pairs<K, V>): Expect<T>

Expects the subject of this expectation (a Map) contains for each entry in keyValuePairs, a key as defined by that entry's Pair.first with a corresponding value as defined by entry's Pair.second.

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.contains(keyValue: KeyWithValueCreator<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValue's KeyWithValueCreator.key with a corresponding value which either holds all assertions keyValue's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.contains(allKeyValues: KeyValues<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains for each KeyWithValueCreator in allKeyValues, a key as defined by KeyWithValueCreator.key with a corresponding value which either holds all assertions KeyWithValueCreator's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.contains(all: All<KeyWithValueCreator<K, V>>): Expect<T>

containsExactly

fun <E, T : Iterable<E>> Expect<T>.containsExactly(expected: E, vararg otherExpected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected value and the otherExpected values (if given) in the defined order.

fun <E : Any, T : Iterable<E?>> Expect<T>.containsExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or only one entry which is null in case assertionCreatorOrNull is defined as null.

fun <E : Any, T : Iterable<E?>> Expect<T>.containsExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?, vararg otherAssertionCreatorsOrNulls: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or null in case assertionCreatorOrNull is defined as null and likewise an additional entry for each otherAssertionCreatorsOrNulls (if given) whereas the entries have to appear in the defined order.

containsExactly

infix fun <E, T : Iterable<E>> Expect<T>.containsExactly(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.containsExactly(values: Values<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected values in the defined order.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.containsExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or only one entry which is null in case assertionCreatorOrNull is defined as null.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.containsExactly(entries: Entries<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by entries.assertionCreatorOrNull or null in case entries.assertionCreatorOrNull is defined as null and likewise an additional entry for each entries.otherAssertionCreatorsOrNulls (if given) whereas the entries have to appear in the defined order.

containsKey

fun <K, T : Map<out K, *>> Expect<T>.containsKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key.

containsKey

infix fun <K, T : Map<out K, *>> Expect<T>.containsKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key.

containsNoDuplicates

fun <E, T : Iterable<E>> Expect<T>.containsNoDuplicates(): Expect<T>

Expects that the subject of this expectation (an Iterable) does not have duplicate elements.

containsNot

fun <T : CharSequence> Expect<T>.containsNot(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain expected's toString representation and neither one of the otherExpected's toString representation (if given).

fun <E, T : Iterable<E>> Expect<T>.containsNot(expected: E, vararg otherExpected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected value and neither one of the otherExpected values (if given).

containsNot

infix fun <T : CharSequence> Expect<T>.containsNot(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain expected's toString representation.

infix fun <T : CharSequence> Expect<T>.containsNot(values: Values<CharSequenceOrNumberOrChar>): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain the toString representation of the given values.

infix fun <E, T : Iterable<E>> Expect<T>.containsNot(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.containsNot(values: Values<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected values.

containsNotKey

fun <K, T : Map<out K, *>> Expect<T>.containsNotKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) does not contain the given key.

containsNotKey

infix fun <K, T : Map<out K, *>> Expect<T>.containsNotKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) does not contain the given key.

containsOnly

fun <K, V, T : Map<out K, V>> Expect<T>.containsOnly(keyValuePair: Pair<K, V>, vararg otherPairs: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second -- optionally the same assertions are created for the otherPairs.

fun <K, V : Any, T : Map<out K, V?>> Expect<T>.containsOnly(keyValue: KeyValue<K, V>, vararg otherKeyValues: KeyValue<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) a key as defined by keyValue's KeyValue.key with a corresponding value which either holds all assertions keyValue's KeyValue.valueAssertionCreatorOrNull creates or needs to be null in case KeyValue.valueAssertionCreatorOrNull is defined as null -- optionally the same assertions are created for the otherKeyValues.

containsOnly

infix fun <K, V, T : Map<out K, V>> Expect<T>.containsOnly(keyValuePair: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only one entry with a key as defined by keyValuePair's Pair.first and a corresponding value as defined by keyValuePair's Pair.second

infix fun <K, V, T : Map<out K, V>> Expect<T>.containsOnly(keyValuePairs: Pairs<K, V>): Expect<T>

Expects the subject of this expectation (a Map) contains only (in any order) for each entry in keyValuePairs, a key as defined by that entry's Pair.first with a corresponding value as defined by entry's Pair.second.

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.containsOnly(keyValue: KeyWithValueCreator<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only one entry with a key as defined by keyValue's KeyWithValueCreator.key with a corresponding value which either holds all assertions keyValue's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.containsOnly(allKeyValues: KeyValues<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) for each KeyWithValueCreator in allKeyValues, a key as defined by KeyWithValueCreator.key with a corresponding value which either holds all assertions KeyWithValueCreator's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

containsRegex

fun <T : CharSequence> Expect<T>.containsRegex(pattern: String, vararg otherPatterns: String): Expect<T>
fun <T : CharSequence> Expect<T>.containsRegex(pattern: Regex, vararg otherPatterns: Regex): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern as well as the otherPatterns (if given), using a non-disjoint search.

containsRegex

infix fun <T : CharSequence> Expect<T>.containsRegex(pattern: String): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern.

createDescriptiveAssertion

fun <T> AssertionContainer<T>.createDescriptiveAssertion(description: Translatable, representation: Any?, test: (T) -> Boolean): Assertion

Creates a DescriptiveAssertion based on the given description, representation and test.

exists

fun <T : Path> Expect<T>.exists(): Expect<T>

Expects that the subject of this expectation (a Path) exists; meaning that there is a file system entry at the location the Path points to.

existsNot

fun <T : Path> Expect<T>.existsNot(): Expect<T>

Expects that the subject of this expectation (a Path) does not exist; meaning that there is no file system entry at the location the Path points to.

expect

fun <T, R> Expect<T>.expect(newSubject: R): FeatureExpect<T, R>

feature

fun <T, R> Expect<T>.feature(property: KProperty1<in T, R>): FeatureExpect<T, R>

Extracts the property out of the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, R> Expect<T>.feature(property: KProperty1<in T, R>, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the property out of the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, R> Expect<T>.feature(f: KFunction1<T, R>): FeatureExpect<T, R>

Extracts the value which is returned when calling f on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, R> Expect<T>.feature(f: KFunction1<T, R>, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, A1, R> Expect<T>.feature(f: KFunction2<T, A1, R>, a1: A1): FeatureExpect<T, R>

Extracts the value which is returned when calling f with argument a1 on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, A1, R> Expect<T>.feature(f: KFunction2<T, A1, R>, a1: A1, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f with argument a1 on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, A1, A2, R> Expect<T>.feature(f: KFunction3<T, A1, A2, R>, a1: A1, a2: A2): FeatureExpect<T, R>

Extracts the value which is returned when calling f with arguments a1, a2 on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, A1, A2, R> Expect<T>.feature(f: KFunction3<T, A1, A2, R>, a1: A1, a2: A2, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f with argument a1, a2 on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, A1, A2, A3, R> Expect<T>.feature(f: KFunction4<T, A1, A2, A3, R>, a1: A1, a2: A2, a3: A3): FeatureExpect<T, R>

Extracts the value which is returned when calling f with arguments a1, a2, a3 on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, A1, A2, A3, R> Expect<T>.feature(f: KFunction4<T, A1, A2, A3, R>, a1: A1, a2: A2, a3: A3, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f with argument a1, a2, a3 on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, A1, A2, A3, A4, R> Expect<T>.feature(f: KFunction5<T, A1, A2, A3, A4, R>, a1: A1, a2: A2, a3: A3, a4: A4): FeatureExpect<T, R>

Extracts the value which is returned when calling f with arguments a1, a2, a3, a4 on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, A1, A2, A3, A4, R> Expect<T>.feature(f: KFunction5<T, A1, A2, A3, A4, R>, a1: A1, a2: A2, a3: A3, a4: A4, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f with argument a1, a2, a3, a4 on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, A1, A2, A3, A4, A5, R> Expect<T>.feature(f: KFunction6<T, A1, A2, A3, A4, A5, R>, a1: A1, a2: A2, a3: A3, a4: A4, a5: A5): FeatureExpect<T, R>

Extracts the value which is returned when calling f with arguments a1, a2, a3, a4, a5 on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, A1, A2, A3, A4, A5, R> Expect<T>.feature(f: KFunction6<T, A1, A2, A3, A4, A5, R>, a1: A1, a2: A2, a3: A3, a4: A4, a5: A5, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts the value which is returned when calling f with argument a1, a2, a3, a4, a5 on the current subject of this expectation, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, R> Expect<T>.feature(description: String, provider: T.() -> R): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation based on the given provider and using the given description, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, R> Expect<T>.feature(description: String, provider: T.() -> R, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts a feature out of the current subject of this expectation based on the given provider and using the given description, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

fun <T, R> Expect<T>.feature(provider: MetaFeatureOption<T>.(T) -> MetaFeature<R>): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation, based on the given provider, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, R> Expect<T>.feature(provider: MetaFeatureOption<T>.(T) -> MetaFeature<R>, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts a feature out of the current subject of this expectation, based on the given provider, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

feature

infix fun <T, R> Expect<T>.feature(property: KProperty1<in T, R>): FeatureExpect<T, R>

Extracts the property out of the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

infix fun <T, R> Expect<T>.feature(f: KFunction1<T, R>): FeatureExpect<T, R>

Extracts the value which is returned when calling the method f on the current subject of this expectation, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

infix fun <T, R> Expect<T>.feature(of: Feature<in T, R>): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation using the given Feature.extractor, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

infix fun <T, R> Expect<T>.feature(of: FeatureWithCreator<in T, R>): Expect<T>

Extracts a feature out of the current subject of this expectation using the given FeatureWithCreator.extractor, creates a new Expect for it, applies an assertion group based on the given FeatureWithCreator.assertionCreator for the feature and returns the initial Expect with the current subject.

infix fun <T, R> Expect<T>.feature(provider: MetaFeatureOption<T>.(T) -> MetaFeature<R>): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation, based on the given provider, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

infix fun <T, R> Expect<T>.feature(of: MetaFeatureOptionWithCreator<T, R>): Expect<T>

Extracts a feature out of the current subject of this expectation, based on the given MetaFeatureOptionWithCreator creates a new Expect for it, applies an assertion group based on the given MetaFeatureOptionWithCreator.assertionCreator for the feature and returns the initial Expect with the current subject.

first

fun <K, V, T : Pair<K, V>> Expect<T>.first(assertionCreator: Expect<K>.() -> Unit): Expect<T>

Expects that the property Pair.first of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

first

infix fun <K, V, T : Pair<K, V>> Expect<T>.first(assertionCreator: Expect<K>.() -> Unit): Expect<T>

Expects that the property Pair.first of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

genericSubjectBasedFeature

fun <T, R> AssertionContainer<T>.genericSubjectBasedFeature(provider: (T) -> MetaFeature<R>): FeatureExtractorBuilder.ExecutionStep<T, R>

get

fun <E, T : List<E>> Expect<T>.get(index: Int, assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the given index is within the bounds of the subject of this expectation (a List) and that the element at that position holds all assertions the given assertionCreator creates for it.

get

infix fun <E, T : List<E>> Expect<T>.get(index: IndexWithCreator<E>): Expect<T>

Expects that the given index is within the bounds of the subject of this expectation (a List) and that the element at that position holds all assertions the given IndexWithCreator.assertionCreator creates for it.

getExisting

fun <K, V, T : Map<out K, V>> Expect<T>.getExisting(key: K): Expect<V>

Expects that the subject of this expectation (a Map) contains the given key, creates an Expect for the corresponding value and returns the newly created Expect, so that further fluent calls are expectations about it.

fun <K, V, T : Map<out K, V>> Expect<T>.getExisting(key: K, assertionCreator: Expect<V>.() -> Unit): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key and that the corresponding value holds all assertions the given assertionCreator creates for it.

getExisting

infix fun <K, V, T : Map<out K, V>> Expect<T>.getExisting(key: K): Expect<V>

Expects that the subject of this expectation (a Map) contains the given key, creates an Expect for the corresponding value and returns the newly created Expect, so that further fluent calls are expectations about it.

infix fun <K, V, T : Map<out K, V>> Expect<T>.getExisting(key: KeyWithCreator<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key and that the corresponding value holds all assertions the given KeyWithCreator.assertionCreator creates for it.

has

infix fun <T : Path> Expect<T>.has(directoryEntries: DirectoryEntries): Expect<T>

Expects that the subject of this expectation (a Path) is a directory having the provided entries. That means that there is a file system entry at the location the Path points to and that it is a directory. Furthermore, every argument string resolved against the subject yields an existing file system entry.

hasDirectoryEntry

fun <T : Path> Expect<T>.hasDirectoryEntry(entry: String, vararg otherEntries: String): Expect<T>

Expects that the subject of this expectation (a Path) is a directory having the provided entries. That means that there is a file system entry at the location the Path points to and that it is a directory. Furthermore, every argument string resolved against the subject yields an existing file system entry.

hasDirectoryEntry

infix fun <T : Path> Expect<T>.hasDirectoryEntry(entry: String): Expect<T>

Expects that the subject of this expectation (a Path) is a directory having the provided entry. That means that there is a file system entry at the location the Path points to and that it is a directory. Furthermore, the argument string resolved against the subject yields an existing file system entry.

hasSameTextualContentAs

fun <T : Path> Expect<T>.hasSameTextualContentAs(targetPath: Path, sourceCharset: Charset = Charsets.UTF_8, targetCharset: Charset = Charsets.UTF_8): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as targetPath taking the given encodings into account (UTF-8 if none given).

hasSameTextualContentAs

infix fun <T : Path> Expect<T>.hasSameTextualContentAs(targetPath: Path): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as targetPath (using UTF-8 for encoding)

infix fun <T : Path> Expect<T>.hasSameTextualContentAs(pathWithEncoding: PathWithEncoding): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as PathWithEncoding.path in the given pathWithEncoding with the specified encodings.

isA

fun <TSub : Any> Expect<*>.isA(assertionCreator: Expect<TSub>.() -> Unit): Expect<TSub>

Expects that the subject of this expectation is a TSub (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

isA

infix fun <TSub : Any> Expect<*>.isA(assertionCreator: Expect<TSub>.() -> Unit): Expect<TSub>

Expects that the subject of this expectation is a TSub (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

isAbsolute

fun <T : Path> Expect<T>.isAbsolute(): Expect<T>

Expects that the subject of this expectation (a Path) is an absolute path; meaning that the Path specified in this instance starts at the file system root.

isDirectory

fun <T : Path> Expect<T>.isDirectory(): Expect<T>

Expects that the subject of this expectation (a Path) is a directory; meaning that there is a file system entry at the location the Path points to and that is a directory.

isEmptyDirectory

fun <T : Path> Expect<T>.isEmptyDirectory(): Expect<T>

Expects that the subject of this expectation (a Path) is an empty directory; meaning that there is a file system entry at the location the Path points to and that is an empty directory.

isEqualIncludingScale

fun <T : BigDecimal> Expect<T>.isEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is equal to expected including BigDecimal.scale.

isEqualIncludingScale

infix fun <T : BigDecimal> Expect<T>.isEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is equal to expected including BigDecimal.scale.

isExecutable

fun <T : Path> Expect<T>.isExecutable(): Expect<T>

Expects that the subject of this expectation (a Path) is executable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to execute it.

isFailure

fun <TExpected : Throwable> Expect<out Result<*>>.isFailure(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the subject of this expectation (a Result) is a Failure, it encapsulates an exception of type TExpected and that the exception holds all assertions the given assertionCreator creates.

isFailure

infix fun <TExpected : Throwable> Expect<out Result<*>>.isFailure(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the subject of this expectation (a Result) is a Failure, it encapsulates an exception of type TExpected and that the exception holds all assertions the given assertionCreator creates.

isKeyValue

fun <K, V, T : Entry<K, V>> Expect<T>.isKeyValue(key: K, value: V): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation is equal to the given key and the property Map.Entry.value is equal to the given value.

isKeyValue

infix fun <K, V, T : Entry<K, V>> Expect<T>.isKeyValue(keyValuePair: Pair<K, V>): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation is equal to the given key and the property Map.Entry.value is equal to the given value.

isNoneOf

fun <T> Expect<T>.isNoneOf(expected: T, vararg otherValues: T): Expect<T>

Expects that the subject of this expectation is not (equal to) expected and otherValues.

isNoneOf

infix fun <T> Expect<T>.isNoneOf(values: Values<T>): Expect<T>

Expects that the subject of this expectation is not (equal to) in values.

isNotBlank

fun <T : CharSequence> Expect<T>.isNotBlank(): Expect<T>

Expects that the subject of this expectation (a CharSequence) CharSequence.kotlin.text.isNotBlank.

isNotEqualIncludingScale

fun <T : BigDecimal> Expect<T>.isNotEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not equal to expected including BigDecimal.scale.

isNotEqualIncludingScale

infix fun <T : BigDecimal> Expect<T>.isNotEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not equal to expected including BigDecimal.scale.

isNotNumericallyEqualTo

fun <T : BigDecimal> Expect<T>.isNotNumericallyEqualTo(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not numerically equal to expected.

isNotNumericallyEqualTo

infix fun <T : BigDecimal> Expect<T>.isNotNumericallyEqualTo(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not numerically equal to expected.

isNotSameAs

fun <T> Expect<T>.isNotSameAs(expected: T): Expect<T>

Expects that the subject of this expectation is not the same instance as expected.

isNotSameAs

infix fun <T> Expect<T>.isNotSameAs(expected: T): Expect<T>

Expects that the subject of this expectation is not the same instance as expected.

isNumericallyEqualTo

fun <T : BigDecimal> Expect<T>.isNumericallyEqualTo(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is numerically equal to expected.

isNumericallyEqualTo

infix fun <T : BigDecimal> Expect<T>.isNumericallyEqualTo(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is numerically equal to expected.

isPresent

fun <E, T : Optional<E>> Expect<T>.isPresent(): Expect<E>

Expects that the subject of this expectation (an Optional) is present and returns an Expect for the inner type E.

fun <E, T : Optional<E>> Expect<T>.isPresent(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the subject of this expectation (an Optional) is present and that it holds all assertions the given assertionCreator creates.

isReadable

fun <T : Path> Expect<T>.isReadable(): Expect<T>

Expects that the subject of this expectation (a Path) is readable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to read from it.

isRegularFile

fun <T : Path> Expect<T>.isRegularFile(): Expect<T>

Expects that the subject of this expectation (a Path) is a file; meaning that there is a file system entry at the location the Path points to and that is a regular file.

isRelative

fun <T : Path> Expect<T>.isRelative(): Expect<T>

Expects that the subject of this expectation (a Path) is a relative path; meaning that the Path specified in this instance does not start at the file system root.

isSameAs

fun <T> Expect<T>.isSameAs(expected: T): Expect<T>

Expects that the subject of this expectation is the same instance as expected.

isSameAs

infix fun <T> Expect<T>.isSameAs(expected: T): Expect<T>

Expects that the subject of this expectation is the same instance as expected.

isSuccess

fun <E, T : Result<E>> Expect<T>.isSuccess(): Expect<E>

Expects that the subject of this expectation (a Result) is a Success and returns an Expect for the inner type E.

fun <E, T : Result<E>> Expect<T>.isSuccess(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the subject of this expectation (a Result) is a Success and that it holds all assertions the given assertionCreator creates.

isSymbolicLink

fun <T : Path> Expect<T>.isSymbolicLink(): Expect<T>

Expects that the subject of this expectation (a Path) is a symbolic link; meaning that there is a file system entry at the location the Path points to and that is a symbolic link.

isWritable

fun <T : Path> Expect<T>.isWritable(): Expect<T>

Expects that the subject of this expectation (a Path) is writable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to write to it.

it

infix fun <T> Expect<T>.it(assertionCreator: Expect<T>.() -> Unit): Expect<T>

Can be used to create a group of sub assertions when using the fluent API.

iterableLikeToIterable

fun <T> AssertionContainer<*>.iterableLikeToIterable(iterableLike: IterableLike): Iterable<T>

Transforms the given iterableLike to an Iterable with an element type T.

iterableLikeToIterableWithoutCheckForElements

fun <T> AssertionContainer<*>.iterableLikeToIterableWithoutCheckForElements(iterableLike: IterableLike): Iterable<T>

Transforms the given iterableLike to an Iterable with an element type T.

its

fun <T, R> Expect<T>.its(extractor: T.() -> R): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation with the help of the given extractor, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

fun <T, R> Expect<T>.its(extractor: T.() -> R, assertionCreator: Expect<R>.() -> Unit): Expect<T>

Extracts a feature out of the current subject of this expectation with the help of the given extractor, creates a new Expect for it, applies an assertion group based on the given assertionCreator for the feature and returns the initial Expect with the current subject.

its

infix fun <T, R> Expect<T>.its(extractor: T.() -> R): FeatureExpect<T, R>

Extracts a feature out of the current subject of this expectation with the help of the given extractor, creates a new Expect for it and returns it so that subsequent calls are based on the feature.

infix fun <T, R> Expect<T>.its(extractorWithCreator: ExtractorWithCreator<T, R>): Expect<T>

Extracts a feature out of the current subject of this expectation with the help of the given extractorWithCreator.extractor, creates a new Expect for it, applies an assertion group based on the given extractorWithCreator.assertionCreator for the feature and returns the initial Expect with the current subject.

key

fun <K, V, T : Entry<K, V>> Expect<T>.key(assertionCreator: Expect<K>.() -> Unit): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

key

infix fun <K, V, T : Entry<K, V>> Expect<T>.key(assertionCreator: Expect<K>.() -> Unit): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

keys

fun <K, V, T : Map<out K, V>> Expect<T>.keys(assertionCreator: Expect<Set<K>>.() -> Unit): Expect<T>

Expects that the property Map.keys of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

keys

infix fun <K, V, T : Map<out K, V>> Expect<T>.keys(assertionCreator: Expect<Set<K>>.() -> Unit): Expect<T>

Expects that the property Map.keys of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

manualFeature

fun <T, R> AssertionContainer<T>.manualFeature(description: String, provider: T.() -> R): FeatureExtractorBuilder.ExecutionStep<T, R>

Convenience method to pass a String as description which is wrapped into an Untranslatable instead of passing a Translatable.

mapLikeToIterablePair

fun <K, V> AssertionContainer<*>.mapLikeToIterablePair(mapLike: MapLike): List<Pair<K, V>>

Transforms the given MapLike to Pair<Pair<K, V>, Array<out Pair<K, V>>> with the intention that it can be easily used for a function requiring Pair<K, V>, vararg Pair<K, V>.

mapLikeToVarArgPairs

fun <K, V> AssertionContainer<*>.mapLikeToVarArgPairs(mapLike: MapLike): Pair<Pair<K, V>, Array<out Pair<K, V>>>

Transforms the given MapLike to an Iterable with an element type Pair<K, V>.

max

fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.max(): Expect<E>

Creates an Expect for the result of calling max() on the subject of this expectation, so that further fluent calls are assertions about it.

fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.max(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the result of calling max() on the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

max

infix fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.max(o: o): Expect<E>

Creates an Expect for the result of calling max() on the subject of this expectation, so that further fluent calls are assertions about it.

infix fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.max(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the result of calling max() on the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

messageContains

fun <T : Throwable> Expect<T>.messageContains(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains expected's toString representation and the toString representation of the otherExpected (if given), using a non-disjoint search.

messageContains

infix fun <T : Throwable> Expect<T>.messageContains(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains expected's toString representation using a non-disjoint search.

infix fun <T : Throwable> Expect<T>.messageContains(values: Values<Any>): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains values's toString representation using a non-disjoint search.

messageToContain

fun <T : Throwable> Expect<T>.messageToContain(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains expected's toString representation and the toString representation of the otherExpected (if given), using a non-disjoint search.

messageToContain

infix fun <T : Throwable> Expect<T>.messageToContain(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains expected's toString representation using a non-disjoint search.

infix fun <T : Throwable> Expect<T>.messageToContain(values: Values<Any>): Expect<T>

Expects that the property Throwable.message of the subject of this expectation is not null and contains values's toString representation using a non-disjoint search.

min

fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.min(): Expect<E>

Creates an Expect for the result of calling min() on the subject of this expectation, so that further fluent calls are assertions about it.

fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.min(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the result of calling min() on the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

min

infix fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.min(o: o): Expect<E>

Creates an Expect for the result of calling min() on the subject of this expectation, so that further fluent calls are assertions about it.

infix fun <E : Comparable<E>, T : Iterable<E>> Expect<T>.min(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the result of calling min() on the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

none

fun <E : Any, T : Iterable<E?>> Expect<T>.none(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it either does not contain a single entry which holds all assertions created by assertionCreatorOrNull or that it does not contain a single entry which is null in case assertionCreatorOrNull is defined as null.

none

infix fun <E : Any, T : Iterable<E?>> Expect<T>.none(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it either does not contain a single entry which holds all assertions created by assertionCreatorOrNull or that it does not contain a single entry which is null in case assertionCreatorOrNull is defined as null.

notToBe

fun <T> Expect<T>.notToBe(expected: T): Expect<T>

Expects that the subject of this expectation is not (equal to) expected.

notToBe

infix fun <T : CharSequence> Expect<T>.notToBe(blank: blank): Expect<T>

Expects that the subject of this expectation (a CharSequence) CharSequence.kotlin.text.isNotBlank.

infix fun <T> Expect<T>.notToBe(expected: T): Expect<T>

Expects that the subject of this expectation is not (equal to) expected.

infix fun <T : Path> Expect<T>.notToBe(existing: existing): Expect<T>

Expects that the subject of this expectation (a Path) does not exist; meaning that there is no file system entry at the location the Path points to.

infix fun <T : Path> Expect<T>.notToBe(readable: readable): Expect<T>

Expects that the subject of this expectation (a Path) is not readable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to read from it.

infix fun <T : Path> Expect<T>.notToBe(writable: writable): Expect<T>

Expects that the subject of this expectation (a Path) is not writable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to write from it.

infix fun <T : Path> Expect<T>.notToBe(executable: executable): Expect<T>

Expects that the subject of this expectation (a Path) is not executable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to execute it.

notToBeBlank

fun <T : CharSequence> Expect<T>.notToBeBlank(): Expect<T>

Expects that the subject of this expectation (a CharSequence) CharSequence.kotlin.text.isNotBlank.

notToBeExecutable

fun <T : Path> Expect<T>.notToBeExecutable(): Expect<T>

Expects that the subject of this expectation (a Path) is not executable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to execute it.

notToBeReadable

fun <T : Path> Expect<T>.notToBeReadable(): Expect<T>

Expects that the subject of this expectation (a Path) is not readable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to read from it.

notToBeTheInstance

fun <T> Expect<T>.notToBeTheInstance(expected: T): Expect<T>

Expects that the subject of this expectation is not the same instance as expected.

notToBeTheInstance

infix fun <T> Expect<T>.notToBeTheInstance(expected: T): Expect<T>

Expects that the subject of this expectation is not the same instance as expected.

notToBeWritable

fun <T : Path> Expect<T>.notToBeWritable(): Expect<T>

Expects that the subject of this expectation (a Path) is not writable; meaning that there is a file system entry at the location the Path points to and that the current thread does not have the permission to write to it.

notToContain

fun <T : CharSequence> Expect<T>.notToContain(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain expected's toString representation and neither one of the otherExpected's toString representation (if given).

fun <E, T : Iterable<E>> Expect<T>.notToContain(expected: E, vararg otherExpected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected value and neither one of the otherExpected values (if given).

notToContain

infix fun <T : CharSequence> Expect<T>.notToContain(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain expected's toString representation.

infix fun <T : CharSequence> Expect<T>.notToContain(values: Values<CharSequenceOrNumberOrChar>): Expect<T>

Expects that the subject of this expectation (a CharSequence) does not contain the toString representation of the given values.

infix fun <E, T : Iterable<E>> Expect<T>.notToContain(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.notToContain(values: Values<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it does not contain the expected values.

notToContainKey

fun <K, T : Map<out K, *>> Expect<T>.notToContainKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) does not contain the given key.

notToContainKey

infix fun <K, T : Map<out K, *>> Expect<T>.notToContainKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) does not contain the given key.

notToEqual

fun <T> Expect<T>.notToEqual(expected: T): Expect<T>

Expects that the subject of this expectation is not equal to expected.

notToEqual

infix fun <T> Expect<T>.notToEqual(expected: T): Expect<T>

Expects that the subject of this expectation is not (equal to) expected.

notToEqualIncludingScale

fun <T : BigDecimal> Expect<T>.notToEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not equal to expected including BigDecimal.scale.

notToEqualIncludingScale

infix fun <T : BigDecimal> Expect<T>.notToEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not equal to expected including BigDecimal.scale.

notToEqualNumerically

fun <T : BigDecimal> Expect<T>.notToEqualNumerically(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not numerically equal to expected.

notToEqualNumerically

infix fun <T : BigDecimal> Expect<T>.notToEqualNumerically(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is not numerically equal to expected.

notToEqualOneOf

fun <T> Expect<T>.notToEqualOneOf(expected: T, vararg otherValues: T): Expect<T>

Expects that the subject of this expectation is not (equal to) expected and otherValues.

notToEqualOneOf

infix fun <T> Expect<T>.notToEqualOneOf(values: Values<T>): Expect<T>

Expects that the subject of this expectation is not (equal to) in values.

notToExist

fun <T : Path> Expect<T>.notToExist(): Expect<T>

Expects that the subject of this expectation (a Path) does not exist; meaning that there is no file system entry at the location the Path points to.

notToHave

infix fun <E, T : Iterable<E>> Expect<T>.notToHave(elements: elements): Expect<T>

Expects that the subject of this expectation (an Iterable) does not have next element.

infix fun <T : Iterator<*>> Expect<T>.notToHave(next: next): Expect<T>

Expects that the subject of this expectation (an Iterator) does not have next element.

notToHaveElements

fun <E, T : Iterable<E>> Expect<T>.notToHaveElements(): Expect<T>

Expects that the subject of this expectation (an Iterable) does not have a next element (Iterator.hasNext returns false).

notToHaveNext

fun <T : Iterator<*>> Expect<T>.notToHaveNext(): Expect<T>

Expects that the subject of this expectation (an Iterator) does not have a next element.

notToThrow

fun <R, T : () -> R> Expect<T>.notToThrow(assertionCreator: Expect<R>.() -> Unit): Expect<R>

Expects that no Throwable is thrown at all when calling the subject (a lambda with arity 0, i.e. without arguments) and that the corresponding return value holds all assertions the given assertionCreator creates.

notToThrow

infix fun <R, T : () -> R> Expect<T>.notToThrow(assertionCreator: Expect<R>.() -> Unit): Expect<R>

Expects that no Throwable is thrown at all when calling the subject (a lambda with arity 0, i.e. without arguments) and that the corresponding return value holds all assertions the given assertionCreator creates.

resolve

fun <T : Path> Expect<T>.resolve(other: String, assertionCreator: Expect<Path>.() -> Unit): Expect<T>

Expects that other resolves against this Path, that the resolved Path holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

resolve

infix fun <T : Path> Expect<T>.resolve(path: PathWithCreator<Path>): Expect<T>

Expects that PathWithCreator.path resolves against this Path, that the resolved Path holds all assertions the given PathWithCreator.assertionCreator creates for it and returns an Expect for the current subject of this expectation.

second

fun <K, V, T : Pair<K, V>> Expect<T>.second(assertionCreator: Expect<V>.() -> Unit): Expect<T>

Expects that the property Pair.second of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

second

infix fun <K, V, T : Pair<K, V>> Expect<T>.second(assertionCreator: Expect<V>.() -> Unit): Expect<T>

Expects that the property Pair.second of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

toAssertionContainer

fun <T> Expect<T>.toAssertionContainer(): AssertionContainer<T>

Casts this Expect to an AssertionContainer so that you have access to the functionality provided on the logic level.

toBe

fun <T> Expect<T>.toBe(expected: T): Expect<T>

Expects that the subject of this expectation is (equal to) expected.

toBe

infix fun <T> Expect<T>.toBe(expected: T): Expect<T>

Expects that the subject of this expectation is (equal to) expected.

infix fun <E, T : Optional<E>> Expect<T>.toBe(present: present): FeatureExpect<T, E>

Expects that the subject of this expectation (an Optional) is present and returns an Expect for the inner type E.

infix fun <E, T : Optional<E>> Expect<T>.toBe(present: PresentWithCreator<E>): Expect<T>

Expects that the subject of this expectation (an Optional) is present and that the wrapped value of type E holds all assertions the given PresentWithCreator.assertionCreator creates.

infix fun <T : Path> Expect<T>.toBe(existing: existing): Expect<T>

Expects that the subject of this expectation (a Path) exists; meaning that there is a file system entry at the location the Path points to.

infix fun <T : Path> Expect<T>.toBe(readable: readable): Expect<T>

Expects that the subject of this expectation (a Path) is readable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to read from it.

infix fun <T : Path> Expect<T>.toBe(writable: writable): Expect<T>

Expects that the subject of this expectation (a Path) is writable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to write to it.

infix fun <T : Path> Expect<T>.toBe(executable: executable): Expect<T>

Expects that the subject of this expectation (a Path) is executable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to execute it.

infix fun <T : Path> Expect<T>.toBe(aRegularFile: aRegularFile): Expect<T>

Expects that the subject of this expectation (a Path) is a file; meaning that there is a file system entry at the location the Path points to and that is a regular file.

infix fun <T : Path> Expect<T>.toBe(aDirectory: aDirectory): Expect<T>

Expects that the subject of this expectation (a Path) is a directory; meaning that there is a file system entry at the location the Path points to and that is a directory.

infix fun <T : Path> Expect<T>.toBe(anEmptyDirectory: anEmptyDirectory): Expect<T>

Expects that the subject of this expectation (a Path) is an empty directory; meaning that there is a file system entry at the location the Path points to and that is an empty directory.

infix fun <T : Path> Expect<T>.toBe(aSymbolicLink: aSymbolicLink): Expect<T>

Expects that the subject of this expectation (a Path) is a symbolic link; meaning that there is a file system entry at the location the Path points to and that is a symbolic link.

infix fun <T : Path> Expect<T>.toBe(absolute: absolute): Expect<T>

Expects that the subject of this expectation (a Path) is an absolute path; meaning that the Path specified in this instance starts at the file system root.

infix fun <T : Path> Expect<T>.toBe(relative: relative): Expect<T>

Expects that the subject of this expectation (a Path) is a relative path; meaning that the Path specified in this instance does not start at the file system root.

toBe

infix fun <E, T : Result<E>> Expect<T>.toBe(success: success): Expect<E>

Expects that the subject of this expectation (a Result) is a Success and returns an Expect for the inner type E.

infix fun <E, T : Result<E>> Expect<T>.toBe(aSuccess: aSuccess): Expect<E>

Expects that the subject of this expectation (a Result) is a success (Result.isSuccess) and returns an Expect for the inner type E.

infix fun <E, T : Result<E>> Expect<T>.toBe(success: SuccessWithCreator<E>): Expect<T>

Expects that the subject of this expectation (a Result) is a success (Result.isSuccess) and that it holds all assertions the given SuccessWithCreator.assertionCreator creates.

toBeAbsolute

fun <T : Path> Expect<T>.toBeAbsolute(): Expect<T>

Expects that the subject of this expectation (a Path) is an absolute path; meaning that the Path specified in this instance starts at the file system root.

toBeADirectory

fun <T : Path> Expect<T>.toBeADirectory(): Expect<T>

Expects that the subject of this expectation (a Path) is a directory; meaning that there is a file system entry at the location the Path points to and that is a directory.

toBeAFailure

fun <TExpected : Throwable> Expect<out Result<*>>.toBeAFailure(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the subject of this expectation (a Result) is a failure (Result.isFailure) , that it encapsulates an exception of type TExpected and that the exception holds all assertions the given assertionCreator creates.

toBeAFailure

infix fun <TExpected : Throwable> Expect<out Result<*>>.toBeAFailure(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the subject of this expectation (a Result) is a failure (Result.isFailure) , that it encapsulates an exception of type TExpected and that the exception holds all assertions the given assertionCreator creates.

toBeAnEmptyDirectory

fun <T : Path> Expect<T>.toBeAnEmptyDirectory(): Expect<T>

Expects that the subject of this expectation (a Path) is an empty directory; meaning that there is a file system entry at the location the Path points to and that is an empty directory.

toBeAnInstanceOf

fun <TSub : Any> Expect<*>.toBeAnInstanceOf(assertionCreator: Expect<TSub>.() -> Unit): Expect<TSub>

Expects that the subject of this expectation is a TSub (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

toBeAnInstanceOf

infix fun <TSub : Any> Expect<*>.toBeAnInstanceOf(assertionCreator: Expect<TSub>.() -> Unit): Expect<TSub>

Expects that the subject of this expectation is a TSub (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

toBeARegularFile

fun <T : Path> Expect<T>.toBeARegularFile(): Expect<T>

Expects that the subject of this expectation (a Path) is a file; meaning that there is a file system entry at the location the Path points to and that is a regular file.

toBeASuccess

fun <E, T : Result<E>> Expect<T>.toBeASuccess(): Expect<E>

Expects that the subject of this expectation (a Result) is a success (Result.isSuccess) and returns an Expect for the inner type E.

fun <E, T : Result<E>> Expect<T>.toBeASuccess(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the subject of this expectation (a Result) is a success (Result.isSuccess) and that it holds all assertions the given assertionCreator creates.

toBeASymbolicLink

fun <T : Path> Expect<T>.toBeASymbolicLink(): Expect<T>

Expects that the subject of this expectation (a Path) is a symbolic link; meaning that there is a file system entry at the location the Path points to and that is a symbolic link.

toBeExecutable

fun <T : Path> Expect<T>.toBeExecutable(): Expect<T>

Expects that the subject of this expectation (a Path) is executable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to execute it.

toBePresent

fun <E, T : Optional<E>> Expect<T>.toBePresent(): Expect<E>

Expects that the subject of this expectation (an Optional) is present and returns an Expect for the inner type E.

fun <E, T : Optional<E>> Expect<T>.toBePresent(assertionCreator: Expect<E>.() -> Unit): Expect<T>

Expects that the subject of this expectation (an Optional) is present and that the wrapped value of type E holds all assertions the given assertionCreator creates.

toBeReadable

fun <T : Path> Expect<T>.toBeReadable(): Expect<T>

Expects that the subject of this expectation (a Path) is readable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to read from it.

toBeRelative

fun <T : Path> Expect<T>.toBeRelative(): Expect<T>

Expects that the subject of this expectation (a Path) is a relative path; meaning that the Path specified in this instance does not start at the file system root.

toBeTheInstance

fun <T> Expect<T>.toBeTheInstance(expected: T): Expect<T>

Expects that the subject of this expectation is the same instance as expected.

toBeTheInstance

infix fun <T> Expect<T>.toBeTheInstance(expected: T): Expect<T>

Expects that the subject of this expectation is the same instance as expected.

toBeWithErrorTolerance

fun Expect<Float>.toBeWithErrorTolerance(expected: Float, tolerance: Float): Expect<Float>

Expects that the subject of this expectation (a Float) is equal to expected with an error tolerance (range including bounds).

fun Expect<Double>.toBeWithErrorTolerance(expected: Double, tolerance: Double): Expect<Double>

Expects that the subject of this expectation (a Double) is equal to expected with an error tolerance (range including bounds).

toBeWritable

fun <T : Path> Expect<T>.toBeWritable(): Expect<T>

Expects that the subject of this expectation (a Path) is writable; meaning that there is a file system entry at the location the Path points to and that the current thread has the permission to write to it.

toContain

fun <T : CharSequence> Expect<T>.toContain(expected: CharSequenceOrNumberOrChar, vararg otherExpected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains expected's toString representation and the toString representation of the otherExpected (if given), using a non-disjoint search.

fun <E, T : Iterable<E>> Expect<T>.toContain(expected: E, vararg otherExpected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected value and the otherExpected values (if given).

fun <E : Any, T : Iterable<E?>> Expect<T>.toContain(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

fun <E : Any, T : Iterable<E?>> Expect<T>.toContain(assertionCreatorOrNull: (Expect<E>.() -> Unit)?, vararg otherAssertionCreatorsOrNulls: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the otherAssertionCreatorsOrNulls.

fun <K, V, T : Map<out K, V>> Expect<T>.toContain(keyValuePair: Pair<K, V>, vararg otherPairs: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second -- optionally the same assertions are created for the otherPairs.

fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContain(keyValue: KeyValue<K, V>, vararg otherKeyValues: KeyValue<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValue's KeyValue.key with a corresponding value which either holds all assertions keyValue's KeyValue.valueAssertionCreatorOrNull creates or needs to be null in case KeyValue.valueAssertionCreatorOrNull is defined as null -- optionally the same assertions are created for the otherKeyValues.

toContain

infix fun <T : CharSequence> Expect<T>.toContain(expected: CharSequenceOrNumberOrChar): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains the expected's toString representation.

infix fun <T : CharSequence> Expect<T>.toContain(values: Values<CharSequenceOrNumberOrChar>): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains the toString representation of the given values using a non-disjoint search.

infix fun <T : CharSequence> Expect<T>.toContain(pattern: Regex): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern.

infix fun <T : CharSequence> Expect<T>.toContain(regexPatterns: RegexPatterns): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression regexPatterns, using a non-disjoint search.

infix fun <T : CharSequence> Expect<T>.toContain(patterns: All<Regex>): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression patterns, using a non-disjoint search.

infix fun <E, T : Iterable<E>> Expect<T>.toContain(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.toContain(values: Values<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains the expected values.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toContain(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toContain(entries: Entries<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by entries.assertionCreatorOrNull or an entry which is null in case entries.assertionCreatorOrNull is defined as null -- likewise an entry (can be the same) is searched for each of the entries.otherAssertionCreatorsOrNulls.

infix fun <K, V, T : Map<out K, V>> Expect<T>.toContain(keyValuePair: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second

infix fun <K, V, T : Map<out K, V>> Expect<T>.toContain(pairs: Pairs<K, V>): Expect<T>

Expects the subject of this expectation (a Map) contains for each key-value pair in pairs, a key as defined by that entry's Pair.first with a corresponding value as defined by entry's Pair.second.

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContain(keyValue: KeyWithValueCreator<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains a key as defined by keyValue's KeyWithValueCreator.key with a corresponding value which either holds all assertions keyValue's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContain(keyValues: KeyValues<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains for each KeyWithValueCreator in keyValues, a key as defined by KeyWithValueCreator.key with a corresponding value which either holds all assertions KeyWithValueCreator's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

toContainExactly

fun <E, T : Iterable<E>> Expect<T>.toContainExactly(expected: E, vararg otherExpected: E, report: InOrderOnlyReportingOptions.() -> Unit = {}): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected value and the otherExpected values (if given) in the defined order.

fun <E : Any, T : Iterable<E?>> Expect<T>.toContainExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or only one entry which is null in case assertionCreatorOrNull is defined as null.

fun <E : Any, T : Iterable<E?>> Expect<T>.toContainExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?, vararg otherAssertionCreatorsOrNulls: (Expect<E>.() -> Unit)?, report: InOrderOnlyReportingOptions.() -> Unit = {}): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or null in case assertionCreatorOrNull is defined as null and likewise an additional entry for each otherAssertionCreatorsOrNulls (if given) whereas the entries have to appear in the defined order.

toContainExactly

infix fun <E, T : Iterable<E>> Expect<T>.toContainExactly(expected: E): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected value.

infix fun <E, T : Iterable<E>> Expect<T>.toContainExactly(values: Values<E>): Expect<T>
infix fun <E, T : Iterable<E>> Expect<T>.toContainExactly(values: WithInOrderOnlyReportingOptions<Values<E>>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only the expected values in the defined order.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toContainExactly(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by assertionCreatorOrNull or only one entry which is null in case assertionCreatorOrNull is defined as null.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toContainExactly(entries: Entries<E>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by entries.assertionCreatorOrNull or null in case entries.assertionCreatorOrNull is defined as null and likewise an additional entry for each entries.otherAssertionCreatorsOrNulls (if given) whereas the entries have to appear in the defined order.

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toContainExactly(entries: WithInOrderOnlyReportingOptions<Entries<E>>): Expect<T>
infix fun <E, T : Iterable<E>> Expect<T>.toContainExactly(elementsOf: WithInOrderOnlyReportingOptions<IterableLike>): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only an entry holding the assertions created by entries.t.assertionCreatorOrNull or null in case entries.t.assertionCreatorOrNull is defined as null and likewise an additional entry for each entries.t.otherAssertionCreatorsOrNulls (if given) whereas the entries have to appear in the defined order.

toContainExactlyElementsOf

fun <E, T : Iterable<E>> Expect<T>.toContainExactlyElementsOf(expectedIterableLike: IterableLike, report: InOrderOnlyReportingOptions.() -> Unit = {}): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only elements of expectedIterableLike in same order

toContainExactlyElementsOf

infix fun <E, T : Iterable<E>> Expect<T>.toContainExactlyElementsOf(expectedIterableLike: IterableLike): Expect<T>

Expects that the subject of this expectation (an Iterable) contains only elements of expectedIterableLike in same order

toContainKey

fun <K, T : Map<out K, *>> Expect<T>.toContainKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key.

toContainKey

infix fun <K, T : Map<out K, *>> Expect<T>.toContainKey(key: K): Expect<T>

Expects that the subject of this expectation (a Map) contains the given key.

toContainOnly

fun <K, V, T : Map<out K, V>> Expect<T>.toContainOnly(keyValuePair: Pair<K, V>, vararg otherPairs: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) a key as defined by keyValuePair's Pair.first with a corresponding value as defined by keyValuePair's Pair.second -- optionally the same assertions are created for the otherPairs.

fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContainOnly(keyValue: KeyValue<K, V>, vararg otherKeyValues: KeyValue<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) a key as defined by keyValue's KeyValue.key with a corresponding value which either holds all assertions keyValue's KeyValue.valueAssertionCreatorOrNull creates or needs to be null in case KeyValue.valueAssertionCreatorOrNull is defined as null -- optionally the same assertions are created for the otherKeyValues.

toContainOnly

infix fun <K, V, T : Map<out K, V>> Expect<T>.toContainOnly(keyValuePair: Pair<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only one entry with a key as defined by keyValuePair's Pair.first and a corresponding value as defined by keyValuePair's Pair.second

infix fun <K, V, T : Map<out K, V>> Expect<T>.toContainOnly(pairs: Pairs<K, V>): Expect<T>

Expects the subject of this expectation (a Map) contains only (in any order) for each key-value pair in pairs, a key as defined by that entry's Pair.first with a corresponding value as defined by entry's Pair.second.

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContainOnly(keyValue: KeyWithValueCreator<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only one entry with a key as defined by keyValue's KeyWithValueCreator.key with a corresponding value which either holds all assertions keyValue's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

infix fun <K, V : Any, T : Map<out K, V?>> Expect<T>.toContainOnly(keyValues: KeyValues<K, V>): Expect<T>

Expects that the subject of this expectation (a Map) contains only (in any order) for each KeyWithValueCreator in keyValues, a key as defined by KeyWithValueCreator.key with a corresponding value which either holds all assertions KeyWithValueCreator's KeyWithValueCreator.valueAssertionCreatorOrNull creates or needs to be null in case KeyWithValueCreator.valueAssertionCreatorOrNull is defined as null

toContainRegex

fun <T : CharSequence> Expect<T>.toContainRegex(pattern: String, vararg otherPatterns: String): Expect<T>
fun <T : CharSequence> Expect<T>.toContainRegex(pattern: Regex, vararg otherPatterns: Regex): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern as well as the otherPatterns (if given), using a non-disjoint search.

toContainRegex

infix fun <T : CharSequence> Expect<T>.toContainRegex(pattern: String): Expect<T>

Expects that the subject of this expectation (a CharSequence) contains a sequence which matches the given regular expression pattern.

toEqual

fun <T> Expect<T>.toEqual(expected: T): Expect<T>

Expects that the subject of this expectation is equal to expected where the comparison is carried out based on Any.equals.

toEqual

infix fun <T> Expect<T>.toEqual(expected: T): Expect<T>

Expects that the subject of this expectation is (equal to) expected where the comparison is carried out based on Any.equals.

toEqualIncludingScale

fun <T : BigDecimal> Expect<T>.toEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is equal to expected including BigDecimal.scale.

toEqualIncludingScale

infix fun <T : BigDecimal> Expect<T>.toEqualIncludingScale(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is equal to expected including BigDecimal.scale.

toEqualKeyValue

fun <K, V, T : Entry<K, V>> Expect<T>.toEqualKeyValue(key: K, value: V): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation is equal to the given key and the property Map.Entry.value is equal to the given value.

toEqualKeyValue

infix fun <K, V, T : Entry<K, V>> Expect<T>.toEqualKeyValue(keyValuePair: Pair<K, V>): Expect<T>

Expects that the property Map.Entry.key of the subject of this expectation is equal to the given key and the property Map.Entry.value is equal to the given value.

toEqualNumerically

fun <T : BigDecimal> Expect<T>.toEqualNumerically(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is numerically equal to expected.

toEqualNumerically

infix fun <T : BigDecimal> Expect<T>.toEqualNumerically(expected: T): Expect<T>

Expects that the subject of this expectation (a BigDecimal) is numerically equal to expected.

toEqualWithErrorTolerance

fun Expect<Float>.toEqualWithErrorTolerance(expected: Float, tolerance: Float): Expect<Float>

Expects that the subject of this expectation (a Float) is equal to expected with an error tolerance (range including bounds).

fun Expect<Double>.toEqualWithErrorTolerance(expected: Double, tolerance: Double): Expect<Double>

Expects that the subject of this expectation (a Double) is equal to expected with an error tolerance (range including bounds).

toExist

fun <T : Path> Expect<T>.toExist(): Expect<T>

Expects that the subject of this expectation (a Path) exists; meaning that there is a file system entry at the location the Path points to.

toExpect

fun <T> AssertionContainer<T>.toExpect(): Expect<T>

Casts this AssertionContainer back to an Expect so that you can use it in places where an Expect is used.

toHave

infix fun <E, T : Iterable<E>> Expect<T>.toHave(elements: elements): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element.

infix fun <T : Iterator<*>> Expect<T>.toHave(next: next): Expect<T>

Expects that the subject of this expectation (an Iterator) has a next element.

infix fun <T : Path> Expect<T>.toHave(directoryEntries: DirectoryEntries): Expect<T>

Expects that the subject of this expectation (a Path) is a directory having the provided entries. That means that there is a file system entry at the location the Path points to and that it is a directory. Furthermore, every argument string resolved against the subject yields an existing file system entry.

toHaveElements

fun <E, T : Iterable<E>> Expect<T>.toHaveElements(): Expect<T>

Expects that the subject of this expectation (an Iterable) has a next element (Iterator.hasNext returns true).

toHaveElementsAnd

infix fun <E, T : Iterable<E>> Expect<T>.toHaveElementsAnd(noDuplicates: noDuplicates): Expect<T>

Expects that the subject of this expectation (an Iterable) does not have duplicate elements.

toHaveElementsAndAll

fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndAll(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has next element(s) and

toHaveElementsAndAll

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndAll(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that either every element holds all assertions created by the assertionCreatorOrNull or that all elements are null in case assertionCreatorOrNull is defined as null.

toHaveElementsAndAny

fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndAny(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has next element(s) and

toHaveElementsAndAny

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndAny(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) contains an entry holding the assertions created by assertionCreatorOrNull or an entry which is null in case assertionCreatorOrNull is defined as null.

toHaveElementsAndNoDuplicates

fun <E, T : Iterable<E>> Expect<T>.toHaveElementsAndNoDuplicates(): Expect<T>

Expects that the subject of this expectation (an Iterable) has next element(s) and that it does not have duplicate elements.

toHaveElementsAndNone

fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndNone(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has next element(s) and

toHaveElementsAndNone

infix fun <E : Any, T : Iterable<E?>> Expect<T>.toHaveElementsAndNone(assertionCreatorOrNull: (Expect<E>.() -> Unit)?): Expect<T>

Expects that the subject of this expectation (an Iterable) has at least one element and that it either does not contain a single entry which holds all assertions created by assertionCreatorOrNull or that it does not contain a single entry which is null in case assertionCreatorOrNull is defined as null.

toHaveNext

fun <T : Iterator<*>> Expect<T>.toHaveNext(): Expect<T>

Expects that the subject of this expectation (an Iterator) has a next element.

toHaveTheDirectoryEntries

fun <T : Path> Expect<T>.toHaveTheDirectoryEntries(entry: String, vararg otherEntries: String): Expect<T>

Expects that the subject of this expectation (a Path) is a directory having the provided entries. That means that there is a file system entry at the location the Path points to and that it is a directory. Furthermore, every argument string resolved against the subject yields an existing file system entry.

toHaveTheSameTextualContentAs

fun <T : Path> Expect<T>.toHaveTheSameTextualContentAs(targetPath: Path, sourceCharset: Charset = Charsets.UTF_8, targetCharset: Charset = Charsets.UTF_8): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as targetPath taking the given encodings into account (UTF-8 if none given).

toHaveTheSameTextualContentAs

infix fun <T : Path> Expect<T>.toHaveTheSameTextualContentAs(targetPath: Path): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as targetPath (using UTF-8 for encoding)

infix fun <T : Path> Expect<T>.toHaveTheSameTextualContentAs(pathWithEncoding: PathWithEncoding): Expect<T>

Expects that the subject of this expectation (a Path) has the same textual content as PathWithEncoding.path in the given pathWithEncoding with the specified encodings.

toThrow

fun <TExpected : Throwable> Expect<() -> Any?>.toThrow(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the thrown Throwable is a TExpected (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

toThrow

infix fun <TExpected : Throwable> Expect<() -> Any?>.toThrow(assertionCreator: Expect<TExpected>.() -> Unit): Expect<TExpected>

Expects that the thrown Throwable is a TExpected (the same type or a sub-type) and that it holds all assertions the given assertionCreator creates.

value

fun <K, V, T : Entry<K, V>> Expect<T>.value(assertionCreator: Expect<V>.() -> Unit): Expect<T>

Expects that the property Map.Entry.value of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

value

infix fun <K, V, T : Entry<K, V>> Expect<T>.value(assertionCreator: Expect<V>.() -> Unit): Expect<T>

Expects that the property Map.Entry.value of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

values

fun <K, V, T : Map<out K, V>> Expect<T>.values(assertionCreator: Expect<Collection<V>>.() -> Unit): Expect<T>

Expects that the property Map.keys of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

values

infix fun <K, V, T : Map<out K, V>> Expect<T>.values(assertionCreator: Expect<Collection<V>>.() -> Unit): Expect<T>

Expects that the property Map.keys of the subject of this expectation holds all assertions the given assertionCreator creates for it and returns an Expect for the current subject of this expectation.

Inheritors

BaseExpectImpl

abstract class BaseExpectImpl<T> : ExpectInternal<T>