public void TestResolveUri() { XmlSchemaSet schemaSet = new XmlSchemaSet(); FileStream stream = new FileStream("Test/XmlFiles/xsd/resolveUriSchema.xsd", FileMode.Open, FileAccess.Read); schemaSet.Add("http://tempuri.org/resolveUriSchema.xsd", new XmlTextReader(stream)); XmlTestResolver resolver = new XmlTestResolver(); XmlReaderSettings settings = new XmlReaderSettings(); settings.Schemas.XmlResolver = resolver; settings.Schemas.Add(schemaSet); settings.ValidationType = ValidationType.Schema; settings.ValidationFlags = XmlSchemaValidationFlags.ProcessInlineSchema | XmlSchemaValidationFlags.ProcessSchemaLocation; XmlReader reader = XmlReader.Create(stream, settings); try { reader.Read(); } catch (XmlException) { // do nothing - we are expecting this exception because the test xmlresolver returns null from its // GetEntity method. } Assert.AreEqual("assembly://MyAssembly.Name/MyProjectNameSpace/objects.xsd", resolver.ReceivedUri.OriginalString); }
public void TestResolveUri () { XmlSchemaSet schemaSet = new XmlSchemaSet (); FileStream stream = new FileStream ("Test/XmlFiles/xsd/resolveUriSchema.xsd", FileMode.Open, FileAccess.Read); schemaSet.Add ("http://tempuri.org/resolveUriSchema.xsd", new XmlTextReader (stream)); XmlTestResolver resolver = new XmlTestResolver (); XmlReaderSettings settings = new XmlReaderSettings (); settings.Schemas.XmlResolver = resolver; settings.Schemas.Add (schemaSet); settings.ValidationType = ValidationType.Schema; settings.ValidationFlags = XmlSchemaValidationFlags.ProcessInlineSchema | XmlSchemaValidationFlags.ProcessSchemaLocation; XmlReader reader = XmlReader.Create (stream, settings); try { reader.Read (); } catch (XmlException) { // do nothing - we are expecting this exception because the test xmlresolver returns null from its // GetEntity method. } Assert.AreEqual ("assembly://MyAssembly.Name/MyProjectNameSpace/objects.xsd", resolver.ReceivedUri.OriginalString); }