public string GetSimpleInvalidXml()
 {
     string invalidCharString = StringGen.GetIllegalXmlString(10, true);
     ManagedNodeWriter mn = new ManagedNodeWriter();
     mn.PutDecl();
     mn.OpenElement("�");
     mn.CloseElement();
     mn.PutText(invalidCharString);
     mn.PutEndElement();
     return mn.GetNodes();
 }
        //[Variation("Default Reader, Check Characters On and pass invalid characters in text", Pri = 0, Params = new object[] { "CoreValidatingReader" })]
        //[Variation("Default Reader, Check Characters On and pass invalid characters in text", Pri = 0, Params = new object[] { "CoreReader" })]
        public int v5()
        {
            string readerType = (string)this.CurVariation.Params[0];
            bool exceptionThrown = false;

            ManagedNodeWriter mn = new ManagedNodeWriter();
            mn.PutDecl();
            mn.OpenElement();
            mn.CloseElement();
            mn.PutText("�"); //This is invalid char in XML.
            mn.PutEndElement();
            string invalidCharXml = mn.GetNodes();

            XmlReaderSettings rs = new XmlReaderSettings();
            rs.CheckCharacters = true;

            XmlReader reader = ReaderHelper.CreateReader(readerType, new StringReader(invalidCharXml), false, null, rs);
            try
            {
                while (reader.Read()) ;
            }
            catch (XmlException xe)
            {
                CError.WriteIgnore(invalidCharXml);
                CError.WriteLine(xe.Message);
                CError.WriteLine(xe.StackTrace);
                exceptionThrown = true;
            }

            mn.Close();
            reader.Dispose();

            if (!exceptionThrown)
                return TEST_FAIL;

            return TEST_PASS;
        }
        //[Variation("Default Reader, Check Characters Off and pass invalid characters in element", Pri = 0, Params = new object[] { "CoreValidatingReader" })]
        //[Variation("Default Reader, Check Characters Off and pass invalid characters in element", Pri = 0, Params = new object[] {"CoreReader"})]
        public int v4()
        {
            string readerType = (string)this.CurVariation.Params[0];
            bool exceptionThrown = false;

            ManagedNodeWriter mn = new ManagedNodeWriter();
            mn.PutDecl();
            mn.OpenElement("�");
            mn.CloseEmptyElement();

            XmlReaderSettings rs = new XmlReaderSettings();
            rs.CheckCharacters = false;
            XmlReader reader = ReaderHelper.CreateReader(readerType, new StringReader(mn.GetNodes()), false, null, rs);
            try
            {
                while (reader.Read()) ;
            }
            catch (XmlException xe)
            {
                CError.WriteIgnore(xe.Message + "\n");
                exceptionThrown = true;
            }

            mn.Close();
            reader.Dispose();

            if (!exceptionThrown)
                return TEST_FAIL;

            return TEST_PASS;
        }