main.kotlin.ch.tutteli.atrium.logic.CollectionLikeAssertions.kt Maven / Gradle / Ivy
package ch.tutteli.atrium.logic
import ch.tutteli.atrium.assertions.Assertion
import ch.tutteli.atrium.creating.AssertionContainer
import ch.tutteli.atrium.logic.creating.transformers.FeatureExtractorBuilder
import ch.tutteli.atrium.logic.creating.typeutils.CollectionLike
/**
* Collection of assertion functions and builders which are applicable to subjects which can be transformed to a
* [Collection] - intended for types which are Collection like such as [Map].
*/
interface CollectionLikeAssertions {
fun isEmpty(container: AssertionContainer, converter: (T) -> Collection<*>): Assertion
fun isNotEmpty(container: AssertionContainer, converter: (T) -> Collection<*>): Assertion
fun size(
container: AssertionContainer,
converter: (T) -> Collection<*>
): FeatureExtractorBuilder.ExecutionStep
}