1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/*
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectThis Java source file was generated by test-to-java.xsl
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectand is a derived work from the source document.
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectThe source document contained the following notice:
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectCopyright (c) 2001 World Wide Web Consortium,
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project(Massachusetts Institute of Technology, Institut National de
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectRecherche en Informatique et en Automatique, Keio University).  All
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectRights Reserved.  This program is distributed under the W3C's Software
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectIntellectual Property License.  This program is distributed in the
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projecthope that it will be useful, but WITHOUT ANY WARRANTY; without even
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectthe implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectPURPOSE.
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source ProjectSee W3C License http://www.w3.org/Consortium/Legal/ for more details.
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project*/
35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage org.w3c.domts.level2.core;
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.*;
39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.DOMTestCase;
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.domts.DOMTestDocumentBuilderFactory;
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  The method createDocumentType should raise a INVALID_CHARACTER_ERR if the qualifiedName
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  contains an illegal characters.
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Invoke createDocument on this DOMImplementation with qualifiedNames having illegal characters.
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Check if an INVALID_CHARACTER_ERR is raised in each case.
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project* @author IBM
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project* @author Neil Delima
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project* @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>
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project*/
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic final class domimplementationcreatedocumenttype04 extends DOMTestCase {
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   /**
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * Constructor.
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * @param factory document factory, may not be null
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * @throws org.w3c.domts.DOMTestIncompatibleException Thrown if test is not compatible with parser configuration
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    */
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   public domimplementationcreatedocumenttype04(final DOMTestDocumentBuilderFactory factory)  throws org.w3c.domts.DOMTestIncompatibleException {
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      super(factory);
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    //
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    //   check if loaded documents are supported for content type
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    //
69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    String contentType = getContentType();
70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    preload(contentType, "staffNS", false);
71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   /**
74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * Runs the test case.
75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * @throws Throwable Any uncaught exception causes test to fail
76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    */
77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   public void runTest() throws Throwable {
78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      Document doc;
79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      DOMImplementation domImpl;
80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      DocumentType newDocType;
81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      String publicId = "http://www.w3.org/DOM/Test/dom2.dtd";
82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      String systemId = "dom2.dtd";
83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      String qualifiedName;
84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      java.util.List qualifiedNames = new java.util.ArrayList();
85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("{");
86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("}");
87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("'");
88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("~");
89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("`");
90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("@");
91adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("#");
92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("$");
93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("%");
94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("^");
95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("&");
96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("*");
97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add("(");
98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      qualifiedNames.add(")");
99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      doc = (Document) load("staffNS", false);
101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      domImpl = doc.getImplementation();
102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      for (int indexN10073 = 0; indexN10073 < qualifiedNames.size(); indexN10073++) {
103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project          qualifiedName = (String) qualifiedNames.get(indexN10073);
104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      {
106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project         boolean success = false;
107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project         try {
108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            newDocType = domImpl.createDocumentType(qualifiedName, publicId, systemId);
109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project          } catch (DOMException ex) {
110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            success = (ex.code == DOMException.INVALID_CHARACTER_ERR);
111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project         }
112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project         assertTrue("domimplementationcreatedocumenttype04", success);
113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      }
114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project  }
115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      }
116adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   /**
117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    *  Gets URI that identifies the test.
118adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    *  @return uri identifier of test
119adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    */
120adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   public String getTargetURI() {
121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project      return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/domimplementationcreatedocumenttype04";
122adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   }
123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   /**
124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * Runs this test from the command line.
125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    * @param args command line arguments
126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    */
127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   public static void main(final String[] args) {
128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        DOMTestCase.doMain(domimplementationcreatedocumenttype04.class, args);
129adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project   }
130adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
131adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
132