Test UriComponents.SerializationInfoString. Covers #21571.
authorMarcos Henrich <marcos.henrich@xamarin.com>
Mon, 8 Sep 2014 14:09:52 +0000 (22:09 +0800)
committerMarcos Henrich <marcos.henrich@xamarin.com>
Mon, 8 Sep 2014 14:09:52 +0000 (22:09 +0800)
mcs/class/System/Test/System/UriTest.cs

index f0a67b7a7cd700cba440bd54e5f757874df0bd66..b3b33170c584a1912bc36937b57c60517dc91617 100644 (file)
@@ -1951,6 +1951,23 @@ namespace MonoTests.System
                        Assert.IsTrue (Uri.TryCreate (mainUri, uriPath, out result), "#1");
                        Assert.AreEqual ("http://www.imdb.com/title/tt0106521", result.ToString (), "#2");
                }
+
+               [Test]
+               public void GetSerializationInfoStringOnRelativeUri ()
+               {
+                       var uri = new Uri ("/relative/path", UriKind.Relative);
+                       var result = uri.GetComponents (UriComponents.SerializationInfoString, UriFormat.UriEscaped);
+
+                       Assert.AreEqual (uri.OriginalString, result);
+               }
+
+               [Test]
+               [ExpectedException (typeof (ArgumentOutOfRangeException))]
+               public void GetSerializationInfoStringException ()
+               {
+                       var uri = new Uri ("/relative/path", UriKind.Relative);
+                       uri.GetComponents (UriComponents.SerializationInfoString  | UriComponents.Host, UriFormat.UriEscaped);
+               }
        }
 
        // Tests non default IriParsing