diff options
Diffstat (limited to 'dom/src/test/java/org/w3c/domts/level2/core/createDocumentType02.java')
-rw-r--r-- | dom/src/test/java/org/w3c/domts/level2/core/createDocumentType02.java | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/dom/src/test/java/org/w3c/domts/level2/core/createDocumentType02.java b/dom/src/test/java/org/w3c/domts/level2/core/createDocumentType02.java new file mode 100644 index 0000000..39317ae --- /dev/null +++ b/dom/src/test/java/org/w3c/domts/level2/core/createDocumentType02.java @@ -0,0 +1,136 @@ + +/* +This Java source file was generated by test-to-java.xsl +and is a derived work from the source document. +The source document contained the following notice: + + + +Copyright (c) 2001 World Wide Web Consortium, +(Massachusetts Institute of Technology, Institut National de +Recherche en Informatique et en Automatique, Keio University). All +Rights Reserved. This program is distributed under the W3C's Software +Intellectual Property License. This program is distributed in the +hope that it will be useful, but WITHOUT ANY WARRANTY; without even +the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE. + +See W3C License http://www.w3.org/Consortium/Legal/ for more details. + + +*/ + +package org.w3c.domts.level2.core; + +import org.w3c.dom.*; + + +import org.w3c.domts.DOMTestCase; +import org.w3c.domts.DOMTestDocumentBuilderFactory; + + + +/** + * The "createDocumentType(qualifiedName,publicId,systemId)" method for a + * DOMImplementation should raise INVALID_CHARACTER_ERR DOMException if + * qualifiedName contains an illegal character. + * + * Invoke method createDocumentType(qualifiedName,publicId,systemId) on + * this domimplementation with qualifiedName containing an illegal character + * from illegalChars[]. Method should raise INVALID_CHARACTER_ERR + * DOMException for all characters in illegalChars[]. +* @author NIST +* @author Mary Brady +* @see <a href="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType">http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType</a> +* @see <a href="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])">http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])</a> +*/ +public final class createDocumentType02 extends DOMTestCase { + + /** + * Constructor. + * @param factory document factory, may not be null + * @throws org.w3c.domts.DOMTestIncompatibleException Thrown if test is not compatible with parser configuration + */ + public createDocumentType02(final DOMTestDocumentBuilderFactory factory) throws org.w3c.domts.DOMTestIncompatibleException { + super(factory); + + // + // check if loaded documents are supported for content type + // + String contentType = getContentType(); + preload(contentType, "staffNS", false); + } + + /** + * Runs the test case. + * @throws Throwable Any uncaught exception causes test to fail + */ + public void runTest() throws Throwable { + String publicId = "http://www.localhost.com/"; + String systemId = "myDoc.dtd"; + String qualifiedName; + Document doc; + DocumentType docType = null; + + DOMImplementation domImpl; + java.util.List illegalQNames = new java.util.ArrayList(); + illegalQNames.add("edi:{"); + illegalQNames.add("edi:}"); + illegalQNames.add("edi:~"); + illegalQNames.add("edi:'"); + illegalQNames.add("edi:!"); + illegalQNames.add("edi:@"); + illegalQNames.add("edi:#"); + illegalQNames.add("edi:$"); + illegalQNames.add("edi:%"); + illegalQNames.add("edi:^"); + illegalQNames.add("edi:&"); + illegalQNames.add("edi:*"); + illegalQNames.add("edi:("); + illegalQNames.add("edi:)"); + illegalQNames.add("edi:+"); + illegalQNames.add("edi:="); + illegalQNames.add("edi:["); + illegalQNames.add("edi:]"); + illegalQNames.add("edi:\\"); + illegalQNames.add("edi:/"); + illegalQNames.add("edi:;"); + illegalQNames.add("edi:`"); + illegalQNames.add("edi:<"); + illegalQNames.add("edi:>"); + illegalQNames.add("edi:,"); + illegalQNames.add("edi:a "); + illegalQNames.add("edi:\""); + + doc = (Document) load("staffNS", false); + for (int indexN1009A = 0; indexN1009A < illegalQNames.size(); indexN1009A++) { + qualifiedName = (String) illegalQNames.get(indexN1009A); + domImpl = doc.getImplementation(); + + { + boolean success = false; + try { + docType = domImpl.createDocumentType(qualifiedName, publicId, systemId); + } catch (DOMException ex) { + success = (ex.code == DOMException.INVALID_CHARACTER_ERR); + } + assertTrue("throw_INVALID_CHARACTER_ERR", success); + } + } + } + /** + * Gets URI that identifies the test. + * @return uri identifier of test + */ + public String getTargetURI() { + return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/createDocumentType02"; + } + /** + * Runs this test from the command line. + * @param args command line arguments + */ + public static void main(final String[] args) { + DOMTestCase.doMain(createDocumentType02.class, args); + } +} + |