2005-02-15 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System.XML / Test / System.Xml / XmlElementTests.cs
index dd285807e91337c13b58a883cd5cdc48a01b35ec..996e1208e740726446288ae07713ea0d3186dcdb 100644 (file)
@@ -325,11 +325,12 @@ namespace MonoTests.System.Xml
                        document.Load (xvr);
                        // RemoveAll
                        AssertNotNull (document.DocumentElement);
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #01", 2, document.DocumentElement.Attributes.Count);
                        AssertEquals ("baz", document.DocumentElement.GetAttribute ("bar"));
                        AssertEquals ("def", document.DocumentElement.GetAttribute ("foo"));
+                       AssertEquals (false, document.DocumentElement.GetAttributeNode ("foo").Specified);
                        document.DocumentElement.RemoveAll ();
-                       AssertEquals (1, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #02", 1, document.DocumentElement.Attributes.Count);
                        AssertEquals ("def", document.DocumentElement.GetAttribute ("foo"));
                        AssertEquals (String.Empty, document.DocumentElement.GetAttribute ("bar"));
 
@@ -337,37 +338,37 @@ namespace MonoTests.System.Xml
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAllAttributes ();
-                       AssertEquals (1, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #03", 1, document.DocumentElement.Attributes.Count);
 
                        // RemoveAttribute(name)
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAttribute ("foo");
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #04", 2, document.DocumentElement.Attributes.Count);
 
                        // RemoveAttribute(name, ns)
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAttribute ("foo", String.Empty);
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #05", 2, document.DocumentElement.Attributes.Count);
 
                        // RemoveAttributeAt
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAttributeAt (1);
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #06", 2, document.DocumentElement.Attributes.Count);
 
                        // RemoveAttributeNode
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAttributeNode (document.DocumentElement.Attributes [1]);
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #07", 2, document.DocumentElement.Attributes.Count);
 
                        // RemoveAttributeNode(name, ns)
                        xvr = new XmlValidatingReader (xml, XmlNodeType.Document, null);
                        document.Load (xvr);
                        document.DocumentElement.RemoveAttributeNode ("foo", String.Empty);
-                       AssertEquals (2, document.DocumentElement.Attributes.Count);
+                       AssertEquals ("attrCount #08", 2, document.DocumentElement.Attributes.Count);
                }
 
                [Test]
@@ -454,6 +455,22 @@ namespace MonoTests.System.Xml
                        AssertEquals ("#Namespaced.VerifyPreviousCleared", "hoge", el.FirstChild.Name);
                }
 
+               [Test]
+               public void InnerXmlSetter2 ()
+               {
+                       // See bug #63574
+                       XmlDocument doc = new XmlDocument ();
+                       doc.LoadXml (@"<type>QPair&lt;QString,int&gt;::
+<ref refid='classQPair'>QPair</ref>
+&lt;
+<ref refid='classQString'>QString</ref>
+,int&gt;
+</type>");
+                       XmlElement typeNode = doc.DocumentElement;
+                       typeNode.InnerText = "QPair<QString, int>";
+                       AssertEquals ("QPair<QString, int>", typeNode.InnerText);
+               }
+
                [Test]
                public void IsEmpty ()
                {