System.Net.Tests.SimpleHttpTest.SimpleRequest_Succeeds C# (CSharp) Method

SimpleRequest_Succeeds() private method

private SimpleRequest_Succeeds ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public static async Task SimpleRequest_Succeeds()
        {
            string url = UrlPrefix.CreateLocal();
            const string expectedResponse = "hello from HttpListener";

            using (HttpListener listener = new HttpListener())
            {
                listener.Prefixes.Add(url);
                listener.Start();

                var serverContextTask = listener.GetContextAsync();

                using (HttpClient client = new HttpClient())
                {
                    var clientTask = client.GetStringAsync(url);

                    var serverContext = await serverContextTask;
                    using (var response = serverContext.Response)
                    {
                        var responseBuffer = Encoding.UTF8.GetBytes(expectedResponse);
                        response.ContentLength64 = responseBuffer.Length;

                        using (var output = response.OutputStream)
                        {
                            await output.WriteAsync(responseBuffer, 0, responseBuffer.Length);
                        }
                    }

                    var clientString = await clientTask;

                    Assert.Equal(expectedResponse, clientString);
                }

                listener.Stop();
            }
        }
    }