internal static HttpResponse CreateRedirect(HttpStatusCode code, ListenerOperation redirect) { var response = CreateRedirect(code, redirect.Uri); response.redirect = redirect; return(response); }
async Task <Response> RunListener(TestContext ctx, CancellationToken cancellationToken) { var me = $"{ME} RUN LISTENER"; ctx.LogDebug(1, me); var operation = Server.Listener.RegisterOperation(ctx, this, Handler, null); var request = CreateRequest(ctx, operation.Uri); listenerOperation = operation; currentRequest = request; if (request is TraditionalRequest traditionalRequest) { servicePoint = traditionalRequest.RequestExt.ServicePoint; } ConfigureRequest(ctx, operation.Uri, request); requestTask.SetResult(request); ctx.LogDebug(2, $"{me} #1: {operation.Uri} {request}"); var response = await Server.Listener.RunWithContext( ctx, operation, request, RunInner, cancellationToken).ConfigureAwait(false); ctx.LogDebug(2, $"{me} DONE: {response}"); await Handler.CheckResponse(ctx, response, cancellationToken, ExpectedStatus, ExpectedError).ConfigureAwait(false); return(response); }