in.specmatic.test.TimeoutPolicy.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.
Deprecation Notice for group ID "in.specmatic"
******************************************************************************************************
Updates for "specmatic-core" will no longer be available under the deprecated group ID "in.specmatic".
Please update your dependencies to use the new group ID "io.specmatic".
******************************************************************************************************
package `in`.specmatic.test
import io.ktor.client.plugins.*
open class TimeoutPolicy(timeout: Int) {
val requestTimeoutInMillis: Long = secondsToMillis(timeout)
val socketTimeoutInMillis: Long = secondsToMillis(timeout + BREATHING_ROOM_FOR_REQUEST_TIMEOUT_TO_KICK_IN_FIRST)
fun configure(httpTimeoutCapabilityConfiguration: HttpTimeout.HttpTimeoutCapabilityConfiguration) {
httpTimeoutCapabilityConfiguration.socketTimeoutMillis = socketTimeoutInMillis
httpTimeoutCapabilityConfiguration.requestTimeoutMillis = requestTimeoutInMillis
}
}
fun secondsToMillis(seconds: Int): Long = seconds * 1000L