public void SetResolverToCustomValidateSomethignChangeResolverThenVerify() { CXmlTestResolver res = new CXmlTestResolver(); CResolverHolder holder = new CResolverHolder(); res.CalledResolveUri += new XmlTestResolverEventHandler(holder.CallBackResolveUri); res.CalledGetEntity += new XmlTestResolverEventHandler(holder.CallBackGetEntity); XmlNamespaceManager manager = new XmlNamespaceManager(new NameTable()); XmlSchemaInfo info = new XmlSchemaInfo(); XmlSchemaValidator val = new XmlSchemaValidator(new NameTable(), new XmlSchemaSet(), manager, AllFlags); val.XmlResolver = res; val.Initialize(); val.ValidateElement("foo", "", null, "type1", null, null, TestData + XSDFILE_NO_TARGET_NAMESPACE); val.SkipToEndElement(null); Assert.True(holder.IsCalledResolveUri); Assert.True(holder.IsCalledGetEntity); val.XmlResolver = new XmlUrlResolver(); holder.IsCalledGetEntity = false; holder.IsCalledResolveUri = false; val.ValidateElement("foo", "", null, "type1", null, null, TestData + XSDFILE_NO_TARGET_NAMESPACE); Assert.True(!holder.IsCalledResolveUri); Assert.True(!holder.IsCalledGetEntity); return; }
public void SetResolverToCustomValidateSomethingSetResolverToNullThenVerify() { CXmlTestResolver res = new CXmlTestResolver(); CResolverHolder holder = new CResolverHolder(); res.CalledResolveUri += new XmlTestResolverEventHandler(holder.CallBackResolveUri); res.CalledGetEntity += new XmlTestResolverEventHandler(holder.CallBackGetEntity); XmlNamespaceManager manager = new XmlNamespaceManager(new NameTable()); XmlSchemaInfo info = new XmlSchemaInfo(); XmlSchemaValidator val = new XmlSchemaValidator(new NameTable(), new XmlSchemaSet(), manager, AllFlags); val.XmlResolver = res; val.Initialize(); val.ValidateElement("foo", "", null, "type1", null, null, TestData + XSDFILE_NO_TARGET_NAMESPACE); val.SkipToEndElement(null); Assert.True(holder.IsCalledResolveUri); Assert.True(holder.IsCalledGetEntity); manager.AddNamespace("t", "uri:tempuri"); val.XmlResolver = null; try { val.ValidateElement("bar", "", null, "t:type1", null, "uri:tempuri " + TestData + XSDFILE_TARGET_NAMESPACE, null); Assert.True(false); } catch (XmlSchemaValidationException) { //XmlExceptionVerifier.IsExceptionOk(e, "Sch_XsiTypeNotFound", new string[] { "uri:tempuri:type1" }); return; } Assert.True(false); }
public void SetSchemaSetTo_Empty_NotCompiled_Compiled(String schemaSetStatus) { XmlSchemaValidator val; XmlSchemaSet sch = new XmlSchemaSet(); if (schemaSetStatus != "empty") { sch.Add("", Path.Combine(TestData, XSDFILE_NO_TARGET_NAMESPACE)); if (schemaSetStatus == "compiled") sch.Compile(); } val = new XmlSchemaValidator(new NameTable(), sch, new XmlNamespaceManager(new NameTable()), AllFlags); Assert.NotEqual(val, null); val.Initialize(); val.ValidateElement("elem1", "", null); val.SkipToEndElement(null); val.EndValidation(); return; }