Test WebClient.UploadFileTaskAsync ContentType. Covers 19529.
authorMarcos Henrich <marcos.henrich@xamarin.com>
Tue, 23 Sep 2014 14:30:50 +0000 (15:30 +0100)
committerMarcos Henrich <marcos.henrich@xamarin.com>
Tue, 23 Sep 2014 14:30:50 +0000 (15:30 +0100)
mcs/class/System/Test/System.Net/WebClientTest.cs

index 48722d45510fd03642ce0aad7ff725e25529587c..ef3f681742513571b358bbfd9b9b126b4276eecd 100644 (file)
@@ -2221,6 +2221,28 @@ namespace MonoTests.System.Net
                                webClient.UploadFileAsync (uri, "PUT", tempFile);
                        });
                }
+
+               [Test]
+               public void UploadFileAsyncContentType ()
+               {
+                       var serverUri = "http://localhost:13370/";
+                       var filename = Path.GetTempFileName ();
+
+                       HttpListener listener = new HttpListener ();
+                       listener.Prefixes.Add (serverUri);
+                       listener.Start ();
+
+                       using (var client = new WebClient ())
+                       {
+                               client.UploadFileTaskAsync (new Uri (serverUri), filename);
+                               var request = listener.GetContext ().Request;
+
+                               var expected = "multipart/form-data; boundary=------------";
+                               Assert.AreEqual (expected.Length + 15, request.ContentType.Length);
+                               Assert.AreEqual (expected, request.ContentType.Substring (0, expected.Length));
+                       }
+                       listener.Close ();
+               }
 #endif
 
 #if NET_4_0