2 // System.Xml.XmlCommentTests.cs
5 // Duncan Mak (duncan@ximian.com)
13 using NUnit.Framework;
15 namespace Ximian.Mono.Tests
17 public class XmlCommentTests : TestCase
25 public XmlCommentTests ()
26 : base ("Ximian.Mono.Tests.XmlCommentTests testsuite")
30 public XmlCommentTests (string name)
35 protected override void SetUp ()
37 document = new XmlDocument ();
38 document.LoadXml ("<root><foo></foo></root>");
39 comment = document.CreateComment ("Comment");
42 internal void TestXmlNodeBaseProperties (XmlNode original, XmlNode cloned)
44 // assertequals (original.nodetype + " was incorrectly cloned.",
45 // original.baseuri, cloned.baseuri);
46 AssertNull (cloned.ParentNode);
47 Assert ("Copies, not pointers", !Object.ReferenceEquals (original,cloned));
50 public void TestXmlCommentName ()
52 AssertEquals (comment.NodeType + " Name property broken",
53 comment.Name, "#comment");
56 public void TestXmlCommentLocalName ()
58 AssertEquals (comment.NodeType + " LocalName property broken",
59 comment.LocalName, "#comment");
62 public void TestXmlCommentNodeType ()
64 AssertEquals ("XmlComment NodeType property broken",
65 comment.NodeType.ToString (), "Comment");
68 public void TestXmlCommentIsReadOnly ()
70 AssertEquals ("XmlComment IsReadOnly property broken",
71 comment.IsReadOnly, false);
74 public void TestXmlCommentCloneNode ()
78 shallow = comment.CloneNode (false); // shallow
79 TestXmlNodeBaseProperties (original, shallow);
80 AssertEquals ("Value incorrectly cloned",
81 original.Value, shallow.Value);
83 deep = comment.CloneNode (true); // deep
84 TestXmlNodeBaseProperties (original, deep);
85 AssertEquals ("Value incorrectly cloned",
86 original.Value, deep.Value);
88 AssertEquals ("deep cloning differs from shallow cloning",
89 deep.OuterXml, shallow.OuterXml);