XmlTextTests.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. //
  2. // System.Xml.XmlTextWriterTests
  3. //
  4. // Authors:
  5. // Kral Ferch <[email protected]>
  6. // Martin Willemoes Hansen <[email protected]>
  7. //
  8. // (C) 2002 Kral Ferch
  9. // (C) 2003 Martin Willemoes Hansen
  10. //
  11. using System;
  12. using System.Xml;
  13. using NUnit.Framework;
  14. namespace MonoTests.System.Xml
  15. {
  16. [TestFixture]
  17. public class XmlTextTests : Assertion
  18. {
  19. XmlDocument document;
  20. XmlText text;
  21. bool inserted;
  22. bool inserting;
  23. bool changed;
  24. bool changing;
  25. bool removed;
  26. bool removing;
  27. [SetUp]
  28. public void GetReady ()
  29. {
  30. document = new XmlDocument ();
  31. }
  32. private void EventNodeInserted(Object sender, XmlNodeChangedEventArgs e)
  33. {
  34. inserted = true;
  35. }
  36. private void EventNodeInserting (Object sender, XmlNodeChangedEventArgs e)
  37. {
  38. inserting = true;
  39. }
  40. private void EventNodeChanged(Object sender, XmlNodeChangedEventArgs e)
  41. {
  42. changed = true;
  43. }
  44. private void EventNodeChanging (Object sender, XmlNodeChangedEventArgs e)
  45. {
  46. changing = true;
  47. }
  48. private void EventNodeRemoved(Object sender, XmlNodeChangedEventArgs e)
  49. {
  50. removed = true;
  51. }
  52. private void EventNodeRemoving (Object sender, XmlNodeChangedEventArgs e)
  53. {
  54. removing = true;
  55. }
  56. [Test]
  57. public void InnerAndOuterXml ()
  58. {
  59. text = document.CreateTextNode ("&<>\"'");
  60. AssertEquals (String.Empty, text.InnerXml);
  61. AssertEquals ("&amp;&lt;&gt;\"'", text.OuterXml);
  62. }
  63. [Test]
  64. public void SplitText ()
  65. {
  66. document.LoadXml ("<root>test text.</root>");
  67. document.NodeInserted += new XmlNodeChangedEventHandler(EventNodeInserted);
  68. document.NodeChanged += new XmlNodeChangedEventHandler(EventNodeChanged);
  69. document.NodeRemoved += new XmlNodeChangedEventHandler(EventNodeRemoved);
  70. XmlText t = document.DocumentElement.FirstChild as XmlText;
  71. t.SplitText (5);
  72. AssertNotNull (t.NextSibling);
  73. AssertEquals ("test ", t.Value);
  74. AssertEquals ("text.", t.NextSibling.Value);
  75. Assert (changed);
  76. Assert (inserted);
  77. Assert (!removed);
  78. }
  79. }
  80. }