public void Test_Post_Success_20File_Parallel()
        {
            using (HttpServer server = HttpServer.Create())
                using (HttpClient client = new HttpClient())
                {
                    server.PortNo      = 4430;
                    server.InDirectory = inDirectory;
                    server.Start();

                    int numLoop   = 20;
                    var orderList = new List <int>();

                    var tasks = Enumerable
                                .Range(0, numLoop)
                                .Select(i => client.PostAsync(uri_hello + i.ToString(), new StringContent("hello, world."))
                                        .ContinueWith(response =>
                    {
                        orderList.Add(i);
                        return(response.Result);
                    }));

                    int j = numLoop;
                    foreach (var task in tasks.Reverse())
                    {
                        var result = task.Result;
                        // assert
                        ServerAssert.PostResultEqual(HttpStatusCode.OK, "hello, world.", Path.Combine(inDirectory, "hello.txt" + (--j).ToString()), result);
                    }
                    System.Diagnostics.Debug.WriteLine(string.Join("\n", orderList));

                    // assert
                    CollectionAssert.AreNotEqual(Enumerable.Range(0, numLoop).Reverse().ToList(), orderList);
                    Assert.AreEqual(numLoop, orderList.Distinct().Count());
                }
        }
Esempio n. 2
0
 public void Test_Start_Fail_Forbidden()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo       = 4430;
             server.OutDirectory = outDirectory;
             server.Start();
             var result = client.DeleteAsync(uri_hello).Result;
             // assert
             ServerAssert.GetResultEqual(HttpStatusCode.Forbidden, "Forbidden", result);
         }
 }
 public void Test_Post_Success_1File()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo      = 4430;
             server.InDirectory = inDirectory;
             server.Start();
             var result = client.PostAsync(uri_hello, new StringContent("hello, world.")).Result;
             // assert
             ServerAssert.PostResultEqual(HttpStatusCode.OK, "hello, world.", Path.Combine(inDirectory, "hello.txt"), result);
         }
 }
Esempio n. 4
0
 public void Test_Get_Success_1Directory()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo       = 4430;
             server.OutDirectory = outDirectory;
             server.Start();
             var result = client.GetAsync(uri_root).Result;
             // assert
             ServerAssert.GetResultEqual(HttpStatusCode.OK, "hello.txt\nハロー.txt", result);
         }
 }
Esempio n. 5
0
 public void Test_Get_Success_NotFound()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo       = 4430;
             server.OutDirectory = outDirectory;
             server.Start();
             var result = client.GetAsync(uri_not_found).Result;
             // assert
             ServerAssert.GetResultEqual(HttpStatusCode.NotFound, "Not Found", result);
         }
 }
Esempio n. 6
0
 public void Test_Get_Success_1File_JP()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo       = 4430;
             server.OutDirectory = outDirectory;
             server.Start();
             var result = client.GetAsync(uri_hello_jp).Result;
             // assert
             ServerAssert.GetResultEqual(HttpStatusCode.OK, "ハロー, ワールド", result);
         }
 }
Esempio n. 7
0
 public void Test_Get_Success_1File_Range_Begin()
 {
     using (HttpServer server = HttpServer.Create())
         using (HttpClient client = new HttpClient())
         {
             server.PortNo       = 4430;
             server.OutDirectory = outDirectory;
             server.Start();
             client.DefaultRequestHeaders.Add("Range", "bytes=3-");
             var result = client.GetAsync(uri_hello).Result;
             // assert
             ServerAssert.GetResultEqual(HttpStatusCode.PartialContent, "lo, world.", result);
         }
 }
Esempio n. 8
0
        public void Test_Get_Success_AfterStop()
        {
            using (HttpServer server = HttpServer.Create())
                using (HttpClient client = new HttpClient())
                {
                    server.PortNo       = 4430;
                    server.OutDirectory = outDirectory;
                    server.Start();

                    server.Stop();
                    server.Start();

                    var result = client.GetAsync(uri_hello).Result;
                    // assert
                    ServerAssert.GetResultEqual(HttpStatusCode.OK, "hello, world.", result);
                }
        }