Esempio n. 1
0
        public virtual void testRegisterClass()
        {
            XMLDoc.registerCustomClass("JDFTestType", "org.cip4.jdflib.core.JDFTestType");
            XMLDoc.registerCustomClass("fnarf:JDFTestType", "org.cip4.jdflib.core.JDFTestType");
            JDFDoc  d = new JDFDoc("JDF");
            JDFNode n = d.getJDFRoot();

            JDFTestType tt = (JDFTestType)n.appendElement("JDFTestType", null);

            tt.setAttribute("fnarf", 3, null);
            Assert.IsTrue(tt.isValid(KElement.EnumValidationLevel.Complete), "extension is valid");

            tt = (JDFTestType)n.appendElement("fnarf:JDFTestType", "WWW.fnarf.com");
            tt.setAttribute("fnarf", 3, null);
            Assert.IsTrue(tt.isValid(KElement.EnumValidationLevel.Complete), "ns extension is valid");
            tt.setAttribute("fnarf", "a", null); // illegal - must be integer
            Assert.IsTrue(!tt.isValid(KElement.EnumValidationLevel.Complete), "ns extension is valid");
            tt.removeAttribute("fnarf", null);
            Assert.IsTrue(tt.isValid(KElement.EnumValidationLevel.Complete), "ns extension is valid");
            tt.setAttribute("gnu", "a", null); // illegal - non existent
            Assert.IsFalse(tt.isValid(KElement.EnumValidationLevel.Complete), "ns extension is valid");

            // boolean bClassCast = false;
            // try
            // {
            // tt = (JDFTestType) n.appendElement("blub:JDFTestType",
            // "WWW.fnarf2.com");
            // }
            // catch (ClassCastException exc)
            // {
            // bClassCast = true;
            // }
            // Assert.IsTrue("ns extension works", bClassCast);
            Assert.IsTrue(!(n.appendElement("blub:JDFTestType", "WWW.fnarf2.com") is JDFTestType), "ns extension works");
        }