using System.Threading;
using System.Globalization;
+#if NET_2_0
+using System.Xml.Serialization;
+using System.IO;
+#endif
+
namespace MonoTests.System.Data.SqlTypes
{
[TestFixture]
XmlQualifiedName qualifiedName = SqlChars.GetXsdType (null);
NUnit.Framework.Assert.AreEqual ("string", qualifiedName.Name, "#A01");
}
+
+ internal void ReadWriteXmlTestInternal (string xml,
+ string testval,
+ string unit_test_id)
+ {
+ SqlString test;
+ SqlString test1;
+ XmlSerializer ser;
+ StringWriter sw;
+ XmlTextWriter xw;
+ StringReader sr;
+ XmlTextReader xr;
+
+ test = new SqlString (testval);
+ ser = new XmlSerializer(typeof(SqlString));
+ sw = new StringWriter ();
+ xw = new XmlTextWriter (sw);
+
+ ser.Serialize (xw, test);
+
+ Assert.AreEqual (xml, sw.ToString (), unit_test_id);
+ Console.WriteLine ("{0} - Got: {1}", unit_test_id, sw.ToString ());
+
+ sr = new StringReader (xml);
+ xr = new XmlTextReader (sr);
+ test1 = (SqlString)ser.Deserialize (xr);
+
+ Assert.AreEqual (testval, test1.Value, unit_test_id);
+ Console.WriteLine ("{0} - Got: {1}", unit_test_id, test1.Value);
+ }
+
+ [Test]
+ public void ReadWriteXmlTest ()
+ {
+ string xml1 = "<?xml version=\"1.0\" encoding=\"utf-16\"?><SqlString>This is a test string</SqlString>";
+ string xml2 = "<?xml version=\"1.0\" encoding=\"utf-16\"?><SqlString>a</SqlString>";
+ string strtest1 = "This is a test string";
+ char strtest2 = 'a';
+
+ ReadWriteXmlTestInternal (xml1, strtest1, "BA01");
+ ReadWriteXmlTestInternal (xml2, strtest2.ToString (), "BA02");
+ }
}
}