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(); }
public int v100() { ManagedNodeWriter mnw = new ManagedNodeWriter(); mnw.PutPattern("X"); do { mnw.OpenElement(); mnw.CloseElement(); } while (mnw.GetNodes().Length < 4096); mnw.Finish(); ReloadSource(new StringReader(mnw.GetNodes())); DataReader.PositionOnElement("ELEMENT_2"); XmlReader r = DataReader.ReadSubtree(); while (r.Read()) ; DataReader.Read(); CError.Compare(DataReader.Name, "ELEMENT_1", "Main name doesnt match"); CError.Compare(DataReader.Value, "", "Main value doesnt match"); CError.Compare(DataReader.NodeType.ToString().ToUpperInvariant(), "ENDELEMENT", "Main nodetype doesnt match"); DataReader.Close(); return TEST_PASS; }
//[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; }