System.Xml.Tests.TCValidateAfterReprocess.v2 C# (CSharp) Method

v2() private method

private v2 ( String testDir, String testFile, int expCount ) : void
testDir String
testFile String
expCount int
return void
        public void v2(String testDir, String testFile, int expCount)
        {
            Initialize();
            string xsd = Path.Combine(path, testDir, testFile + ".xsd");
            string xml = Path.Combine(path, testDir, testFile + ".xml");

            XmlSchemaSet ss = new XmlSchemaSet();
            ss.XmlResolver = new XmlUrlResolver();
            XmlSchema schema = ss.Add(null, XmlReader.Create(xsd));
            Assert.Equal(ss.Count, expCount);
            ss.Compile();
            Assert.Equal(ss.Count, expCount);

            XmlSchemaElement element = new XmlSchemaElement();
            schema.Items.Add(element);
            element.Name = "book";
            element.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

            foreach (XmlSchema sc in ss.Schemas())
                ss.Reprocess(sc);

            Assert.Equal(ss.Count, expCount);
            ss.Compile();
            Assert.Equal(ss.Count, expCount);

            ValidateWithXmlReader(ss, xml, xsd);

            Assert.Equal(ss.Count, expCount);
            ss.Compile();
            Assert.Equal(ss.Count, expCount);

            ss.RemoveRecursive(schema);
            Assert.Equal(ss.Count, 0);
            ss.Compile();
            Assert.Equal(ss.Count, 0);

            try
            {
                ss.Reprocess(schema);
                Assert.True(false);
            }
            catch (ArgumentException e)
            {
                _output.WriteLine(e.Message);
                Assert.Equal(ss.Count, 0);
            }
            return;
        }
    }
TCValidateAfterReprocess