--- /dev/null
+//\r
+// XmlDataDocumentTestTest.cs - NUnit Test Cases for XmlDataDocument\r
+//\r
+// Ville Palo (vi64pa@koti.soon.fi)\r
+//\r
+// (C) Ville Palo 2002\r
+// \r
+\r
+using NUnit.Framework;\r
+using System;\r
+using System.Data;\r
+using System.Xml;\r
+using System.IO;\r
+\r
+namespace MonoTests.System.Data.Xml\r
+{\r
+ public class XmlDataDocumentTest : TestCase {\r
+ \r
+\r
+ public XmlDataDocumentTest() : base ("System.Xml.XmlDataDocument") {}\r
+ public XmlDataDocumentTest(string name) : base(name) {}\r
+\r
+ protected override void TearDown() {}\r
+\r
+ protected override void SetUp() \r
+ {\r
+ }\r
+\r
+ public static ITest Suite {\r
+ get {\r
+ return new TestSuite(typeof(XmlDataDocumentTest));\r
+ }\r
+ }\r
+\r
+ // Test constructor\r
+ public void Test1() \r
+ {\r
+\r
+ //Create an XmlDataDocument.\r
+ XmlDataDocument doc = new XmlDataDocument();\r
+\r
+ //Load the schema file.\r
+ doc.DataSet.ReadXmlSchema("System.Xml/store.xsd"); \r
+\r
+ //Load the XML data.\r
+ doc.Load("System.Data/2books.xml");\r
+\r
+ //Update the price on the first book using the DataSet methods.\r
+ DataTable books = doc.DataSet.Tables["book"];\r
+ books.Rows[0]["price"] = "12,95"; \r
+\r
+ //string outstring = "";\r
+ TextWriter text = new StringWriter ();\r
+ doc.Save(text);\r
+ \r
+ //str.Read (bytes, 0, (int)str.Length);\r
+ //String OutString = new String (bytes);\r
+ \r
+ string TextString = text.ToString ();\r
+ string substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A01", "<?xml version=\"1.0\" encoding=\"utf-16\"?>", substring);\r
+ \r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A02", "<!--sample XML fragment-->", substring);\r
+ \r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A03", "<bookstore>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A04", " <book genre=\"novel\" ISBN=\"10-861003-324\">", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A05", " <title>The Handmaid's Tale</title>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A06", " <price>12.95</price>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A07", " </book>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A08", " <book genre=\"novel\" ISBN=\"1-861001-57-5\">", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A09", " <title>Pride And Prejudice</title>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A10", " <price>24.95</price>", substring);\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#A11", " </book>", substring);\r
+ substring = TextString;\r
+ AssertEquals ("#A12", "</bookstore>", substring);\r
+\r
+ }\r
+\r
+ // Test public fields\r
+ public void Test2()\r
+ {\r
+ DataSet RegionDS = new DataSet ();\r
+ DataRow RegionRow;\r
+ RegionDS.ReadXmlSchema ("System.Xml/region.xsd");\r
+ XmlDataDocument DataDoc = new XmlDataDocument (RegionDS);\r
+ DataDoc.Load("System.Data/region.xml" );\r
+\r
+\r
+ RegionRow = RegionDS.Tables[0].Rows[0];\r
+\r
+ RegionDS.AcceptChanges ();\r
+ RegionRow["RegionDescription"] = "Reeeeeaalllly Far East!";\r
+ RegionDS.AcceptChanges ();\r
+\r
+ TextWriter text = new StringWriter ();\r
+\r
+ DataDoc.Save (text);\r
+ string TextString = text.ToString ();\r
+ string substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ \r
+ AssertEquals ("#B01", "<?xml version=\"1.0\" encoding=\"utf-16\" standalone=\"yes\"?>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B02", "<Root>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B03", " <Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B04", " <RegionID>1</RegionID>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B05", " <RegionDescription>Reeeeeaalllly Far East!</RegionDescription>", substring);\r
+ \r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B06", " </Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B07", " <Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B08", " <RegionID>2</RegionID>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B09", " <RegionDescription>Western", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B10", " </RegionDescription>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B11", " </Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B12", " <Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B13", " <RegionID>3</RegionID>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B14", " <RegionDescription>Northern", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B15", " </RegionDescription>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B16", " </Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B17", " <Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B18", " <RegionID>4</RegionID>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B19", " <RegionDescription>Southern", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B20", " </RegionDescription>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B21", " </Region>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B22", " <MoreData>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B23", " <Column1>12</Column1>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B24", " <Column2>Hi There</Column2>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B25", " </MoreData>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B26", " <MoreData>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B27", " <Column1>12</Column1>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B28", " <Column2>Hi There</Column2>", substring);\r
+\r
+ substring = TextString.Substring (0, TextString.IndexOf("\n") - 1);\r
+ TextString = TextString.Substring (TextString.IndexOf("\n") + 1);\r
+ AssertEquals ("#B29", " </MoreData>", substring);\r
+ }\r
+ }\r
+}\r
+\r