Пример #1
0
        public void TestNoWriteStreamBuffering(PuppyFlags flags)
        {
            var req = GetPuppy.CreateRequest (flags, TransferMode.Default);

            req.Method = "POST";
            req.KeepAlive = false;
            req.AllowWriteStreamBuffering = false;

            var ar = req.BeginGetRequestStream (null, null);
            var rs = req.EndGetRequestStream (ar);
            rs.Close ();
        }
        public static HttpWebRequest CreateWebRequest(string path, PuppyFlags flags, string method = "GET")
        {
            var proto = UseSSL (flags) ? "https" : "http";
            var uri = string.Format ("{0}://{1}{2}{3}", proto, Settings.WebHost, Settings.WebPrefix, path);
            // Debug ("CreateWebRequest", uri, flags);

            var wr = (HttpWebRequest)HttpWebRequest.Create (uri);
            wr.Method = method;
            wr.AllowAutoRedirect = AutoRedirect (flags);
            if (UseProxy (flags))
                wr.Proxy = GetProxy (flags);
            return wr;
        }
Пример #3
0
        public static HttpWebRequest CreateRequest(PuppyFlags flags, TransferMode mode, string prefix, string body)
        {
            var request = WebTestFixture.CreateWebRequest (prefix + "/cgi-bin/post-puppy.pl?mode=" + GetModeString (mode), flags);
            request.ContentType = "text/plain";
            request.Method = "POST";

            switch (mode) {
            case TransferMode.Chunked:
                request.SendChunked = true;
                break;
            case TransferMode.ContentLength:
                request.ContentLength = body.Length;
                break;
            }

            using (var writer = new StreamWriter (request.GetRequestStream ())) {
                writer.Write (body);
            }

            return request;
        }
Пример #4
0
 public void TestSimpleGet(PuppyFlags flags)
 {
     var response = GetResponse ("www/index.html", flags);
     try {
         Assert.AreEqual (HttpStatusCode.OK, response.StatusCode);
     } finally {
         response.Close ();
     }
 }
Пример #5
0
 public SimpleTest(PuppyFlags flags, TransferMode mode)
 {
     Flags = flags;
     TransferMode = mode;
 }
Пример #6
0
 public static GetPuppy Get(PuppyFlags flags, TransferMode mode)
 {
     var request = CreateRequest (flags, mode);
     var response = (HttpWebResponse)request.GetResponse ();
     return Read (response);
 }
Пример #7
0
 public static HttpWebRequest CreateRequest(PuppyFlags flags, TransferMode mode)
 {
     return WebTestFixture.CreateWebRequest ("www/cgi-bin/get-puppy.pl?mode=" + GetModeString (mode), flags);
 }
 public static bool UseSSL(PuppyFlags flags)
 {
     return (flags & PuppyFlags.UseSSL) != 0;
 }
 public static bool UseProxy(PuppyFlags flags)
 {
     return (flags & PuppyFlags.UseProxy) != 0;
 }
 public static HttpWebResponse GetResponse(string path, PuppyFlags flags, string method = "GET")
 {
     var request = CreateWebRequest (path, flags, method);
     request.Timeout = 2500;
     return GetResponse (request);
 }
 public static bool AutoRedirect(PuppyFlags flags)
 {
     return (flags & PuppyFlags.AutoRedirect) != 0;
 }
 static IWebProxy GetProxy(PuppyFlags flags)
 {
     var proxy = new WebProxy (UseSSL (flags) ? Settings.SquidAddressSSL : Settings.SquidAddress);
     if (!string.IsNullOrEmpty (Settings.SquidUser))
         proxy.Credentials = new NetworkCredential (Settings.SquidUser, Settings.SquidPass);
     return proxy;
 }
 public ReuseTest(PuppyFlags flags, TransferMode mode, int count, int limit = 10)
     : base(flags, mode)
 {
     Count = count;
     Limit = limit;
 }
Пример #14
0
 public static HttpWebRequest CreateRequest(PuppyFlags flags, TransferMode mode, string body)
 {
     return CreateRequest (flags, mode, "www", body);
 }