1 // XmlAttributeTests.cs : Tests for the XmlAttribute class
3 // Author: Mike Kestner <mkestner@speakeasy.net>
5 // <c> 2002 Mike Kestner
10 using NUnit.Framework;
12 namespace MonoTests.System.Xml
14 public class XmlAttributeTests : TestCase
16 public XmlAttributeTests() : base("MonoTests.System.Xml.XmlAttributeTests testsuite") { }
17 public XmlAttributeTests(string name) : base(name) { }
22 protected override void SetUp()
24 doc = new XmlDocument();
25 attr = doc.CreateAttribute("attr1");
29 public void TestAttributes()
31 AssertNull(attr.Attributes);
34 public void TestAttributeInnerAndOuterXml ()
36 attr = doc.CreateAttribute ("foo", "bar", "http://abc.def");
38 AssertEquals ("baz", attr.InnerXml);
39 AssertEquals ("foo:bar=\"baz\"", attr.OuterXml);
42 public void TestAttributeWithNoValue ()
44 XmlAttribute attribute = doc.CreateAttribute ("name");
45 AssertEquals (String.Empty, attribute.Value);
46 Assert (!attribute.HasChildNodes);
47 AssertNull (attribute.FirstChild);
48 AssertNull (attribute.LastChild);
49 AssertEquals (0, attribute.ChildNodes.Count);
52 public void TestAttributeWithValue ()
54 XmlAttribute attribute = doc.CreateAttribute ("name");
55 attribute.Value = "value";
56 AssertEquals ("value", attribute.Value);
57 Assert (attribute.HasChildNodes);
58 AssertNotNull (attribute.FirstChild);
59 AssertNotNull (attribute.LastChild);
60 AssertEquals (1, attribute.ChildNodes.Count);
61 AssertEquals (XmlNodeType.Text, attribute.ChildNodes [0].NodeType);
62 AssertEquals ("value", attribute.ChildNodes [0].Value);
65 public void TestHasChildNodes()
67 Assert(attr.HasChildNodes);
70 public void TestName()
72 AssertEquals("attr1", attr.Name);
75 public void TestNodeType()
77 AssertEquals(XmlNodeType.Attribute, attr.NodeType);
80 public void TestOwnerDocument()
82 AssertSame(doc, attr.OwnerDocument);
85 public void TestParentNode()
87 AssertNull("Attr parents not allowed", attr.ParentNode);
90 public void TestValue()
92 AssertEquals("val1", attr.Value);