doc / ch.tutteli.atrium.api.infix.en_GB / of

of

fun <T> of(reason: String, assertionCreator: Expect<T>.() -> Unit): KeyWithCreator<String, T> (source)

Helper function to create a KeyWithCreator based on the given reason and assertionCreator.

data class Person(val age: Int)
val customers = listOf(Person(21))

expect("filename") because of("? is not allowed in file names on Windows") {
    it notToContain "?"
}

expect(customers) toHaveElementsAndAll (fun Expect<Person>.() {
    it because of("the legal age of maturity in Switzerland is 18") {
        feature { f(it::age) } toBeGreaterThanOrEqualTo 18
    }
})
fun <T, A1, R> of(f: KFunction2<T, A1, R>, a1: A1): Feature<T, R> (source)

Helper function to create a Feature based on a KFunction2 + arguments.

Return
The newly created Feature.

fun <T, A1, A2, R> of(f: KFunction3<T, A1, A2, R>, a1: A1, a2: A2): Feature<T, R> (source)

Helper function to create a Feature based on a KFunction3 + arguments.

Return
The newly created Feature.

fun <T, A1, A2, A3, R> of(f: KFunction4<T, A1, A2, A3, R>, a1: A1, a2: A2, a3: A3): Feature<T, R> (source)

Helper function to create a Feature based on a KFunction4 + arguments.

Return
The newly created Feature.

fun <T, A1, A2, A3, A4, R> of(f: KFunction5<T, A1, A2, A3, A4, R>, a1: A1, a2: A2, a3: A3, a4: A4): Feature<T, R> (source)

Helper function to create a Feature based on a KFunction5 + arguments.

Return
The newly created Feature.

fun <T, A1, A2, A3, A4, A5, R> of(f: KFunction6<T, A1, A2, A3, A4, A5, R>, a1: A1, a2: A2, a3: A3, a4: A4, a5: A5): Feature<T, R> (source)

Helper function to create a Feature based on a KFunction6 + arguments.

Return
The newly created Feature.

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

Helper function to create a FeatureWithCreator based on a KProperty1 + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction1 + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction2 + arguments + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction3 + arguments + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction4 + arguments + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction5 + arguments + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a FeatureWithCreator based on a KFunction6 + arguments + assertionCreator.

Return
The newly created FeatureWithCreator.

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

Helper function to create a MetaFeatureOptionWithCreator based on a lambda with MetaFeatureOption receiver (has to return a MetaFeature) and an assertionCreator.

fun <T, R> of(description: String, extractor: T.() -> R): Feature<T, R> (source)

Creates a Feature using the given extractor and description.

This can be used to create complex features with a custom description or as workaround where Kotlin is not able to infer the types properly.

For instance:

expect(person) feature of("first underage child") { children.first { it < 18 } }

Note, you need to enable the new type inference of Kotlin (or use Kotlin 1.4 and above) in order that Kotlin is able to infer the types. As workaround you can use feature with the overload which expects MetaFeatureOption<T>.(T) -> MetaFeature<R>. For instance:

// use
expect(person) feature { f("first underage child", it.children.first { it < 18 }) }

// instead of (which causes problems with Kotlin < 1.4)
expect(person) feature of("first underage child") { children.first { it < 18 }

Return
The newly created Feature.

fun <T, R> of(description: String, extractor: T.() -> R, assertionCreator: Expect<R>.() -> Unit): FeatureWithCreator<T, R> (source)

Creates a Feature using the given extractor and description.

This can be used to create complex features with a custom description or as workaround where Kotlin is not able to infer the types properly.

For instance:

expect(person) feature of("first underage child", { children.first { it < 18 }) { name.toEqual("robert) }

Note, you need to enable the new type inference of Kotlin (or use Kotlin 1.4 and above) in order that Kotlin is able to infer the types. As workaround you can use feature with the overload which expects MetaFeatureOption<T>.(T) -> MetaFeature<R>. and use it after the call (import from the package workaround). For instance:

// use
import ch.tutteli.atrium.api.infix.en_GB.workaround.it
expect(person) feature { f(it::age) } it { this toEqual 20 }

// instead of (which causes problems with Kotlin < 1.4)
expect(person) feature of({ f(it::age) }) { this toEqual 20 }

Return
The newly created Feature.