2 // System.Xml.XmlTextWriterTests
\r
5 // Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
\r
7 // (C) 2003 Atsushi Enomoto
\r
10 // This class mainly checks inheritance and behaviors of XmlWriter.
\r
20 using NUnit.Framework;
\r
22 namespace MonoTests.System.Xml
\r
24 public class XmlWriterTests : TestCase
\r
26 public XmlWriterTests () : base ("MonoTests.System.Xml.XmlWriterTests testsuite") {}
\r
27 public XmlWriterTests (string name) : base (name) {}
\r
29 protected override void SetUp ()
\r
33 // MS.NET's not-overriden XmlWriter.WriteStartElement(name)
\r
34 // invokes WriteStartElement(null, name, null).
\r
35 // WriteStartElement(name, ns) invokes (null, name, ns), too.
\r
36 public void TestStartElement ()
\r
38 StartElementTestWriter xw = new StartElementTestWriter ();
\r
39 xw.WriteStartDocument ();
\r
40 xw.WriteStartElement ("test");
\r
41 AssertEquals ("StartElementOverride.NS", null, xw.NS);
\r
42 AssertEquals ("StartElementOverride.Prefix", null, xw.Prefix);
\r
43 xw.NS = String.Empty;
\r
44 xw.Prefix = String.Empty;
\r
45 xw.WriteStartElement ("test", "urn:hoge");
\r
46 AssertEquals ("StartElementOverride.NS", "urn:hoge", xw.NS);
\r
47 AssertEquals ("StartElementOverride.Prefix", null, xw.Prefix);
\r
50 class StartElementTestWriter : DefaultXmlWriter
\r
52 public StartElementTestWriter () : base () {}
\r
53 public string NS = String.Empty;
\r
54 public string Prefix = String.Empty;
\r
56 public override void WriteStartElement (string prefix, string localName, string ns)
\r
59 this.Prefix = prefix;
\r
64 internal class DefaultXmlWriter : XmlWriter
\r
66 public DefaultXmlWriter () : base ()
\r
70 public override void Close ()
\r
74 public override void Flush ()
\r
78 public override string LookupPrefix (string ns)
\r
83 public override void WriteBase64 (byte [] buffer, int index, int count)
\r
87 public override void WriteBinHex (byte [] buffer, int index, int count)
\r
91 public override void WriteCData (string text)
\r
95 public override void WriteCharEntity (char ch)
\r
99 public override void WriteChars (char [] buffer, int index, int count)
\r
103 public override void WriteComment (string text)
\r
107 public override void WriteDocType (string name, string pubid, string sysid, string subset)
\r
111 public override void WriteEndAttribute ()
\r
115 public override void WriteEndDocument ()
\r
119 public override void WriteEndElement ()
\r
123 public override void WriteEntityRef (string name)
\r
127 public override void WriteFullEndElement ()
\r
131 public override void WriteName (string name)
\r
135 public override void WriteNmToken (string name)
\r
139 public override void WriteNode (XmlReader reader, bool defattr)
\r
143 public override void WriteProcessingInstruction (string name, string text)
\r
147 public override void WriteQualifiedName (string localName, string ns)
\r
151 public override void WriteRaw (string data)
\r
155 public override void WriteRaw (char [] buffer, int index, int count)
\r
159 public override void WriteStartAttribute (string prefix, string localName, string ns)
\r
163 public override void WriteStartDocument (bool standalone)
\r
167 public override void WriteStartDocument ()
\r
171 public override void WriteStartElement (string prefix, string localName, string ns)
\r
175 public override void WriteString (string text)
\r
179 public override void WriteSurrogateCharEntity (char lowChar, char highChar)
\r
183 public override void WriteWhitespace (string ws)
\r
187 public override WriteState WriteState {
\r
189 return WriteState.Start;
\r
193 public override string XmlLang {
\r
199 public override XmlSpace XmlSpace {
\r
201 return XmlSpace.None;
\r