io.specmatic.core.CheckFacts.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.value.Value
data class CheckFacts(private val state: Map = emptyMap()) : FactStore {
override fun match(sampleValue: Value, key: String): Result =
when (val stateValue = state.getValue(key)) {
sampleValue -> Result.Success()
else -> Result.Failure(message = "Server state did not match. Expected $stateValue at $key, but got $sampleValue.")
}
override fun has(key: String): Boolean = state.containsKey(key)
override fun get(key: String): Value = state.getValue(key)
}