public final class io/ktor/server/testing/ApplicationTestBuilder : io/ktor/server/testing/TestApplicationBuilder, io/ktor/server/testing/ClientProvider {
	public fun <init> ()V
	public fun createClient (Lkotlin/jvm/functions/Function1;)Lio/ktor/client/HttpClient;
	public fun getClient ()Lio/ktor/client/HttpClient;
}

public abstract class io/ktor/server/testing/BaseTest {
	public fun <init> ()V
	public final fun collectUnhandledException (Ljava/lang/Throwable;)V
	public fun getTimeout-UwyO8pc ()J
	public final fun runTest (Lkotlin/jvm/functions/Function2;)V
}

public abstract interface class io/ktor/server/testing/ClientProvider {
	public abstract fun createClient (Lkotlin/jvm/functions/Function1;)Lio/ktor/client/HttpClient;
	public abstract fun getClient ()Lio/ktor/client/HttpClient;
}

public abstract class io/ktor/server/testing/EngineTestBase : io/ktor/server/testing/BaseTest, kotlinx/coroutines/CoroutineScope {
	public static final field Companion Lio/ktor/server/testing/EngineTestBase$Companion;
	public static field keyStore Ljava/security/KeyStore;
	public static field sslContext Ljavax/net/ssl/SSLContext;
	public static field trustManager Ljavax/net/ssl/X509TrustManager;
	public fun <init> (Lio/ktor/server/engine/ApplicationEngineFactory;)V
	protected fun configure (Lio/ktor/server/engine/ApplicationEngine$Configuration;)V
	protected final fun createAndStartServer (Lorg/slf4j/Logger;Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/engine/ApplicationEngine;
	public static synthetic fun createAndStartServer$default (Lio/ktor/server/testing/EngineTestBase;Lorg/slf4j/Logger;Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/engine/ApplicationEngine;
	protected fun createServer (Lorg/slf4j/Logger;Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/engine/ApplicationEngine;
	public static synthetic fun createServer$default (Lio/ktor/server/testing/EngineTestBase;Lorg/slf4j/Logger;Lkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/engine/ApplicationEngine;
	protected final fun findFreePort ()I
	public final fun getApplicationEngineFactory ()Lio/ktor/server/engine/ApplicationEngineFactory;
	protected final fun getCallGroupSize ()I
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	protected final fun getEnableCertVerify ()Z
	protected final fun getEnableHttp2 ()Z
	protected final fun getEnableSsl ()Z
	protected final fun getPort ()I
	protected final fun getServer ()Lio/ktor/server/engine/ApplicationEngine;
	protected final fun getSslPort ()I
	protected final fun getTestDispatcher ()Lkotlinx/coroutines/CoroutineDispatcher;
	public final fun getTestLog ()Lorg/slf4j/Logger;
	public fun getTimeout-UwyO8pc ()J
	protected final fun isUnderDebugger ()Z
	protected fun plugins (Lio/ktor/server/application/Application;Lkotlin/jvm/functions/Function1;)V
	protected final fun setEnableCertVerify (Z)V
	protected final fun setEnableHttp2 (Z)V
	protected final fun setEnableSsl (Z)V
	protected final fun setPort (I)V
	protected final fun setServer (Lio/ktor/server/engine/ApplicationEngine;)V
	protected final fun setSslPort (I)V
	public final fun setUpBase ()V
	public static final fun setupAll ()V
	protected final fun socket (Lkotlin/jvm/functions/Function1;)V
	protected final fun startServer (Lio/ktor/server/engine/ApplicationEngine;)Ljava/util/List;
	public final fun tearDownBase ()V
	protected final fun withUrl (Ljava/lang/String;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function3;)V
	public static synthetic fun withUrl$default (Lio/ktor/server/testing/EngineTestBase;Ljava/lang/String;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function3;ILjava/lang/Object;)V
}

public final class io/ktor/server/testing/EngineTestBase$Companion {
	public final fun getKeyStore ()Ljava/security/KeyStore;
	public final fun getKeyStoreFile ()Ljava/io/File;
	public final fun getSslContext ()Ljavax/net/ssl/SSLContext;
	public final fun getTrustManager ()Ljavax/net/ssl/X509TrustManager;
	public final fun setKeyStore (Ljava/security/KeyStore;)V
	public final fun setSslContext (Ljavax/net/ssl/SSLContext;)V
	public final fun setTrustManager (Ljavax/net/ssl/X509TrustManager;)V
	public final fun setupAll ()V
}

protected abstract interface annotation class io/ktor/server/testing/EngineTestBase$Http2Only : java/lang/annotation/Annotation {
}

protected abstract interface annotation class io/ktor/server/testing/EngineTestBase$NoHttp2 : java/lang/annotation/Annotation {
}

public final class io/ktor/server/testing/ExternalServicesBuilder {
	public fun <init> ()V
	public final fun hosts ([Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
}

public final class io/ktor/server/testing/HighLoadHttpGenerator {
	public static final field Companion Lio/ktor/server/testing/HighLoadHttpGenerator$Companion;
	public fun <init> (Ljava/lang/String;IIIZLkotlin/jvm/functions/Function1;)V
	public fun <init> (Ljava/lang/String;Ljava/lang/String;IIIZ)V
	public final fun getHighPressure ()Z
	public final fun getHost ()Ljava/lang/String;
	public final fun getNumberOfConnections ()I
	public final fun getQueueSize ()I
	public static final fun main ([Ljava/lang/String;)V
	public final fun mainLoop ()V
	public final fun shutdown ()V
	public final fun stop ()V
}

public final class io/ktor/server/testing/HighLoadHttpGenerator$Companion {
	public final fun doRun (Ljava/lang/String;IIIIZJJLkotlin/jvm/functions/Function1;)V
	public final fun doRun (Ljava/lang/String;Ljava/lang/String;IIIIZJJ)V
	public final fun main ([Ljava/lang/String;)V
}

public final class io/ktor/server/testing/It {
	public static final field INSTANCE Lio/ktor/server/testing/It;
}

public final class io/ktor/server/testing/On {
	public static final field INSTANCE Lio/ktor/server/testing/On;
}

public final class io/ktor/server/testing/StressSuiteRunner : org/junit/runner/Runner, org/junit/runner/manipulation/Filterable, org/junit/runner/manipulation/Sortable {
	public fun <init> (Ljava/lang/Class;)V
	public fun filter (Lorg/junit/runner/manipulation/Filter;)V
	public fun getDescription ()Lorg/junit/runner/Description;
	public fun run (Lorg/junit/runner/notification/RunNotifier;)V
	public fun sort (Lorg/junit/runner/manipulation/Sorter;)V
}

public final class io/ktor/server/testing/TestApplication : io/ktor/server/testing/ClientProvider {
	public fun createClient (Lkotlin/jvm/functions/Function1;)Lio/ktor/client/HttpClient;
	public fun getClient ()Lio/ktor/client/HttpClient;
	public final fun stop ()V
}

public class io/ktor/server/testing/TestApplicationBuilder {
	public fun <init> ()V
	public final fun application (Lkotlin/jvm/functions/Function1;)V
	public final fun environment (Lkotlin/jvm/functions/Function1;)V
	public final fun externalServices (Lkotlin/jvm/functions/Function1;)V
	public final fun install (Lio/ktor/server/application/Plugin;Lkotlin/jvm/functions/Function1;)V
	public static synthetic fun install$default (Lio/ktor/server/testing/TestApplicationBuilder;Lio/ktor/server/application/Plugin;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
	public final fun routing (Lkotlin/jvm/functions/Function1;)V
}

public final class io/ktor/server/testing/TestApplicationCall : io/ktor/server/engine/BaseApplicationCall, kotlinx/coroutines/CoroutineScope {
	public fun <init> (Lio/ktor/server/application/Application;ZZLkotlin/coroutines/CoroutineContext;)V
	public synthetic fun <init> (Lio/ktor/server/application/Application;ZZLkotlin/coroutines/CoroutineContext;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	public synthetic fun getRequest ()Lio/ktor/server/engine/BaseApplicationRequest;
	public synthetic fun getRequest ()Lio/ktor/server/request/ApplicationRequest;
	public fun getRequest ()Lio/ktor/server/testing/TestApplicationRequest;
	public final fun getRequestHandled ()Z
	public synthetic fun getResponse ()Lio/ktor/server/engine/BaseApplicationResponse;
	public synthetic fun getResponse ()Lio/ktor/server/response/ApplicationResponse;
	public fun getResponse ()Lio/ktor/server/testing/TestApplicationResponse;
	public fun toString ()Ljava/lang/String;
}

public final class io/ktor/server/testing/TestApplicationEngine : io/ktor/server/engine/BaseApplicationEngine, kotlinx/coroutines/CoroutineScope {
	public fun <init> ()V
	public fun <init> (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;)V
	public synthetic fun <init> (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
	public final fun createCall (ZZLkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplicationCall;
	public static synthetic fun createCall$default (Lio/ktor/server/testing/TestApplicationEngine;ZZLkotlin/coroutines/CoroutineContext;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/testing/TestApplicationCall;
	public final fun getCallInterceptor ()Lkotlin/jvm/functions/Function3;
	public final fun getClient ()Lio/ktor/client/HttpClient;
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	public final fun getEngine ()Lio/ktor/client/engine/HttpClientEngine;
	public final fun handleRequest (ZLkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplicationCall;
	public static synthetic fun handleRequest$default (Lio/ktor/server/testing/TestApplicationEngine;ZLkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/testing/TestApplicationCall;
	public final fun handleWebSocket (Ljava/lang/String;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplicationCall;
	public final fun hookRequests (Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;)V
	public fun resolvedConnectors (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
	public final fun setCallInterceptor (Lkotlin/jvm/functions/Function3;)V
	public fun start (Z)Lio/ktor/server/engine/ApplicationEngine;
	public fun stop (JJ)V
}

public final class io/ktor/server/testing/TestApplicationEngine$Configuration : io/ktor/server/engine/BaseApplicationEngine$Configuration {
	public fun <init> ()V
	public final fun getDispatcher ()Lkotlin/coroutines/CoroutineContext;
	public final fun setDispatcher (Lkotlin/coroutines/CoroutineContext;)V
}

public final class io/ktor/server/testing/TestApplicationEngineJvmKt {
	public static final fun handleWebSocketConversation (Lio/ktor/server/testing/TestApplicationEngine;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ZLkotlin/jvm/functions/Function4;)Lio/ktor/server/testing/TestApplicationCall;
	public static synthetic fun handleWebSocketConversation$default (Lio/ktor/server/testing/TestApplicationEngine;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ZLkotlin/jvm/functions/Function4;ILjava/lang/Object;)Lio/ktor/server/testing/TestApplicationCall;
}

public final class io/ktor/server/testing/TestApplicationEngineKt {
	public static final fun cookiesSession (Lio/ktor/server/testing/TestApplicationEngine;Lkotlin/jvm/functions/Function0;)V
}

public final class io/ktor/server/testing/TestApplicationKt {
	public static final fun TestApplication (Lkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplication;
	public static final fun testApplication (Lkotlin/jvm/functions/Function2;)V
}

public final class io/ktor/server/testing/TestApplicationRequest : io/ktor/server/engine/BaseApplicationRequest, kotlinx/coroutines/CoroutineScope {
	public fun <init> (Lio/ktor/server/testing/TestApplicationCall;ZLio/ktor/http/HttpMethod;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;)V
	public synthetic fun <init> (Lio/ktor/server/testing/TestApplicationCall;ZLio/ktor/http/HttpMethod;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
	public final fun addHeader (Ljava/lang/String;Ljava/lang/String;)V
	public final fun getBodyChannel ()Lio/ktor/utils/io/ByteReadChannel;
	public fun getCookies ()Lio/ktor/server/request/RequestCookies;
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	public fun getHeaders ()Lio/ktor/http/Headers;
	public fun getLocal ()Lio/ktor/http/RequestConnectionPoint;
	public final fun getMethod ()Lio/ktor/http/HttpMethod;
	public final fun getPort ()Ljava/lang/Integer;
	public final fun getProtocol ()Ljava/lang/String;
	public fun getQueryParameters ()Lio/ktor/http/Parameters;
	public fun getRawQueryParameters ()Lio/ktor/http/Parameters;
	public final fun getUri ()Ljava/lang/String;
	public final fun getVersion ()Ljava/lang/String;
	public fun receiveChannel ()Lio/ktor/utils/io/ByteReadChannel;
	public final fun setBodyChannel (Lio/ktor/utils/io/ByteReadChannel;)V
	public final fun setMethod (Lio/ktor/http/HttpMethod;)V
	public final fun setPort (Ljava/lang/Integer;)V
	public final fun setProtocol (Ljava/lang/String;)V
	public final fun setUri (Ljava/lang/String;)V
	public final fun setVersion (Ljava/lang/String;)V
}

public final class io/ktor/server/testing/TestApplicationRequestKt {
	public static final fun setBody (Lio/ktor/server/testing/TestApplicationRequest;Lio/ktor/utils/io/core/ByteReadPacket;)V
	public static final fun setBody (Lio/ktor/server/testing/TestApplicationRequest;Ljava/lang/String;)V
	public static final fun setBody (Lio/ktor/server/testing/TestApplicationRequest;Ljava/lang/String;Ljava/util/List;)V
	public static final fun setBody (Lio/ktor/server/testing/TestApplicationRequest;[B)V
}

public final class io/ktor/server/testing/TestApplicationResponse : io/ktor/server/engine/BaseApplicationResponse, kotlinx/coroutines/CoroutineScope {
	public fun <init> (Lio/ktor/server/testing/TestApplicationCall;Z)V
	public synthetic fun <init> (Lio/ktor/server/testing/TestApplicationCall;ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
	public final fun awaitWebSocket (J)V
	public final fun contentChannel ()Lio/ktor/utils/io/ByteReadChannel;
	public final fun getByteContent ()[B
	public final fun getContent ()Ljava/lang/String;
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	public fun getHeaders ()Lio/ktor/server/response/ResponseHeaders;
	public final fun websocketChannel ()Lio/ktor/utils/io/ByteReadChannel;
}

public final class io/ktor/server/testing/TestApplicationResponseJvmKt {
	public static final fun awaitWebSocket (Lio/ktor/server/testing/TestApplicationResponse;Ljava/time/Duration;)V
}

public final class io/ktor/server/testing/TestEngine : io/ktor/server/engine/ApplicationEngineFactory {
	public static final field INSTANCE Lio/ktor/server/testing/TestEngine;
	public synthetic fun create (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/engine/ApplicationEngine;
	public fun create (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplicationEngine;
}

public final class io/ktor/server/testing/TestEngineKt {
	public static final fun createTestEnvironment (Lkotlin/jvm/functions/Function1;)Lio/ktor/server/engine/ApplicationEngineEnvironment;
	public static synthetic fun createTestEnvironment$default (Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/engine/ApplicationEngineEnvironment;
	public static final fun handleRequest (Lio/ktor/server/testing/TestApplicationEngine;Lio/ktor/http/HttpMethod;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)Lio/ktor/server/testing/TestApplicationCall;
	public static synthetic fun handleRequest$default (Lio/ktor/server/testing/TestApplicationEngine;Lio/ktor/http/HttpMethod;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/ktor/server/testing/TestApplicationCall;
	public static final fun withApplication (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
	public static synthetic fun withApplication$default (Lio/ktor/server/engine/ApplicationEngineEnvironment;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/Object;
	public static final fun withTestApplication (Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
	public static final fun withTestApplication (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
	public static final fun withTestApplication (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
	public static synthetic fun withTestApplication$default (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Ljava/lang/Object;
}

public final class io/ktor/server/testing/UtilsKt {
	public static final fun contentType (Lio/ktor/server/testing/TestApplicationResponse;)Lio/ktor/http/ContentType;
	public static final fun it (Lio/ktor/server/testing/On;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
	public static final fun on (Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
}

public final class io/ktor/server/testing/client/InvalidTestRequestException : java/lang/IllegalArgumentException {
	public fun <init> (Ljava/lang/String;Ljava/util/Set;Ljava/util/List;)V
}

public final class io/ktor/server/testing/client/TestHttpClientConfig : io/ktor/client/engine/HttpClientEngineConfig {
	public field app Lio/ktor/server/testing/TestApplicationEngine;
	public fun <init> ()V
	public final fun getApp ()Lio/ktor/server/testing/TestApplicationEngine;
	public final fun setApp (Lio/ktor/server/testing/TestApplicationEngine;)V
}

public final class io/ktor/server/testing/client/TestHttpClientEngine : io/ktor/client/engine/HttpClientEngineBase {
	public static final field Companion Lio/ktor/server/testing/client/TestHttpClientEngine$Companion;
	public fun <init> (Lio/ktor/server/testing/client/TestHttpClientConfig;)V
	public fun close ()V
	public fun execute (Lio/ktor/client/request/HttpRequestData;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
	public synthetic fun getConfig ()Lio/ktor/client/engine/HttpClientEngineConfig;
	public fun getConfig ()Lio/ktor/server/testing/client/TestHttpClientConfig;
	public fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
	public fun getDispatcher ()Lkotlinx/coroutines/CoroutineDispatcher;
	public fun getSupportedCapabilities ()Ljava/util/Set;
}

public final class io/ktor/server/testing/client/TestHttpClientEngine$Companion : io/ktor/client/engine/HttpClientEngineFactory {
	public fun create (Lkotlin/jvm/functions/Function1;)Lio/ktor/client/engine/HttpClientEngine;
}

