Package io.ktor.client.engine.mock

Types

Link copied to clipboard
class MockEngine(config: MockEngineConfig) : HttpClientEngineBase

HttpClientEngine for writing tests without network.

Link copied to clipboard
Link copied to clipboard
typealias MockRequestHandler = suspend MockRequestHandleScope.(request: HttpRequestData) -> HttpResponseData

Single HttpClientCall to HttpResponse mapper.

Link copied to clipboard
class MockRequestHandleScope(callContext: CoroutineContext)

Functions

Link copied to clipboard
fun MockRequestHandleScope.respond(content: ByteReadChannel, status: HttpStatusCode = HttpStatusCode.OK, headers: Headers = headersOf()): HttpResponseData

Send response with specified ByteReadChannel, status and headers.

fun MockRequestHandleScope.respond(content: ByteArray, status: HttpStatusCode = HttpStatusCode.OK, headers: Headers = headersOf()): HttpResponseData

Send response with specified bytes content, status and headers.

fun MockRequestHandleScope.respond(content: String, status: HttpStatusCode = HttpStatusCode.OK, headers: Headers = headersOf()): HttpResponseData

Send response with specified string content, status and headers.

Link copied to clipboard
Link copied to clipboard
fun MockRequestHandleScope.respondError(status: HttpStatusCode, content: String = status.description, headers: Headers = headersOf()): HttpResponseData

Send error response.

Link copied to clipboard
fun MockRequestHandleScope.respondOk(content: String = ""): HttpResponseData

Send ok response.

Link copied to clipboard
fun MockRequestHandleScope.respondRedirect(location: String = ""): HttpResponseData

Respond redirect with location in Location header.

Link copied to clipboard
suspend fun OutgoingContent.toByteArray(): ByteArray
Link copied to clipboard
suspend fun OutgoingContent.toByteReadPacket(): ByteReadPacket