io.specmatic.core.KeyError.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of specmatic-core Show documentation
Show all versions of specmatic-core Show documentation
Turn your contracts into executable specifications. Contract Driven Development - Collaboratively Design & Independently Deploy MicroServices & MicroFrontends.
package io.specmatic.core
import io.specmatic.core.Result.Failure
sealed class KeyError {
abstract val name: String
abstract fun missingKeyToResult(keyLabel: String, mismatchMessages: MismatchMessages = DefaultMismatchMessages): Failure
}
data class MissingKeyError(override val name: String) : KeyError() {
override fun missingKeyToResult(keyLabel: String, mismatchMessages: MismatchMessages): Failure =
Failure(mismatchMessages.expectedKeyWasMissing(keyLabel, name))
}
data class UnexpectedKeyError(override val name: String) : KeyError() {
override fun missingKeyToResult(keyLabel: String, mismatchMessages: MismatchMessages): Failure =
Failure(mismatchMessages.unexpectedKey(keyLabel, name))
}