public void InvalidXMLUnitTest()
{
Console.WriteLine("--> " + System.Reflection.MethodBase.GetCurrentMethod().Name);
if (m_presenceSchema == null)
{
Console.WriteLine("Loading XSD schema for dialog event package, takes a while...");
m_presenceSchema = new XmlSchemaSet();
XmlReader schemaReader = new XmlTextReader(SIPSorcery.SIP.Properties.Resources.PIDFSchema, XmlNodeType.Document, null);
m_presenceSchema.Add(m_pidfXMLNS, schemaReader);
}
// The mandatory entity attribue on the presence element is missing.
string invalidPresenceXMLStr =
"<?xml version='1.0' encoding='utf-16'?>" +
"<presence xmlns='urn:ietf:params:xml:ns:pidf'>" +
"</presence>";
XDocument presenceDoc = XDocument.Parse(invalidPresenceXMLStr);
presenceDoc.Validate(m_presenceSchema, (o, e) =>
{
Console.WriteLine("XSD validation " + e.Severity + " event: " + e.Message);
if (e.Severity == XmlSeverityType.Error)
{
throw e.Exception;
}
});
Console.WriteLine("-----------------------------------------");
}