Exemple #1
0
        /// <summary>
        /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed.
        /// <example>
        /// httpcontinuedelegate.BeginInvoke(StatusCode, httpHeaders, callback);
        /// </example>
        /// </summary>
        public static IAsyncResult BeginInvoke(this HttpContinueDelegate httpcontinuedelegate, Int32 StatusCode, WebHeaderCollection httpHeaders, AsyncCallback callback)
        {
            if (httpcontinuedelegate == null)
            {
                throw new ArgumentNullException("httpcontinuedelegate");
            }

            return(httpcontinuedelegate.BeginInvoke(StatusCode, httpHeaders, callback, null));
        }
 public async Task HttpWebRequest_ContinueDelegateProperty_Success()
 {
     await LoopbackServer.CreateServerAsync(async (server, url) =>
     {
         HttpWebRequest request = WebRequest.CreateHttp(url);
         request.Method         = HttpMethod.Get.Method;
         HttpContinueDelegate continueDelegate = new HttpContinueDelegate(HttpContinueMethod);
         request.ContinueDelegate = continueDelegate;
         _ = request.GetResponseAsync();
         await server.AcceptConnectionSendResponseAndCloseAsync(HttpStatusCode.OK, "Content-Type: application/json;charset=UTF-8\r\n", "12345");
         Assert.Equal(continueDelegate, request.ContinueDelegate);
     });
 }
 public async Task HttpWebRequest_ContinueDelegateProperty_Success()
 {
     await LoopbackServer.CreateServerAsync(async (server, url) =>
     {
         HttpWebRequest request = WebRequest.CreateHttp(url);
         request.Method = HttpMethod.Get.Method;
         HttpContinueDelegate continueDelegate = new HttpContinueDelegate(HttpContinueMethod);
         request.ContinueDelegate = continueDelegate;
         Task<WebResponse> getResponse = request.GetResponseAsync();
         DateTimeOffset utcNow = DateTimeOffset.UtcNow;
         await LoopbackServer.ReadRequestAndSendResponseAsync(server,
                 $"HTTP/1.1 200 OK\r\n" +
                 $"Date: {utcNow:R}\r\n" +
                 "Content-Type: application/json;charset=UTF-8\r\n" +
                 "Content-Length: 5\r\n" +
                 "\r\n" +
                 "12345");
         Assert.Equal(continueDelegate, request.ContinueDelegate);
     });
 }
 public async Task HttpWebRequest_ContinueDelegateProperty_Success()
 {
     await LoopbackServer.CreateServerAsync(async (server, url) =>
     {
         HttpWebRequest request = WebRequest.CreateHttp(url);
         request.Method         = HttpMethod.Get.Method;
         HttpContinueDelegate continueDelegate = new HttpContinueDelegate(HttpContinueMethod);
         request.ContinueDelegate       = continueDelegate;
         Task <WebResponse> getResponse = request.GetResponseAsync();
         DateTimeOffset utcNow          = DateTimeOffset.UtcNow;
         await LoopbackServer.ReadRequestAndSendResponseAsync(server,
                                                              $"HTTP/1.1 200 OK\r\n" +
                                                              $"Date: {utcNow:R}\r\n" +
                                                              "Content-Type: application/json;charset=UTF-8\r\n" +
                                                              "Content-Length: 5\r\n" +
                                                              "\r\n" +
                                                              "12345");
         Assert.Equal(continueDelegate, request.ContinueDelegate);
     });
 }