All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.kotlin.ch.tutteli.atrium.logic.FeatureAssertions.kt Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
package ch.tutteli.atrium.logic

import ch.tutteli.atrium.creating.AssertionContainer
import ch.tutteli.atrium.logic.creating.transformers.FeatureExtractorBuilder
import ch.tutteli.atrium.reporting.translating.Translatable
import kotlin.reflect.*

/**
 * Collection of functions which help to create feature assertions by returning [FeatureExtractorBuilder.ExecutionStep].
 */
interface FeatureAssertions {
    //@formatter:off
    fun  property(container: AssertionContainer, property: KProperty1): FeatureExtractorBuilder.ExecutionStep

    fun  f0(container: AssertionContainer, f: KFunction1): FeatureExtractorBuilder.ExecutionStep

    fun  f1(container: AssertionContainer, f: KFunction2, a1: A1): FeatureExtractorBuilder.ExecutionStep

    fun  f2(container: AssertionContainer, f: KFunction3, a1: A1, a2: A2): FeatureExtractorBuilder.ExecutionStep

    fun  f3(container: AssertionContainer, f: KFunction4, a1: A1, a2: A2, a3: A3): FeatureExtractorBuilder.ExecutionStep

    fun  f4(container: AssertionContainer, f: KFunction5, a1: A1, a2: A2, a3: A3, a4: A4): FeatureExtractorBuilder.ExecutionStep

    fun  f5(container: AssertionContainer, f: KFunction6, a1: A1, a2: A2, a3: A3, a4: A4, a5: A5): FeatureExtractorBuilder.ExecutionStep
    //@formatter:on

    fun  manualFeature(
        container: AssertionContainer,
        description: Translatable,
        provider: T.() -> R
    ): FeatureExtractorBuilder.ExecutionStep
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy