1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/*
2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project This Java source file was generated by test-to-java.xsl
3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project and is a derived work from the source document.
4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project The source document contained the following notice:
5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Copyright (c) 2001 World Wide Web Consortium,
9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project (Massachusetts Institute of Technology, Institut National de
10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Recherche en Informatique et en Automatique, Keio University).  All
11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Rights Reserved.  This program is distributed under the W3C's Software
12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Intellectual Property License.  This program is distributed in the
13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project hope that it will be useful, but WITHOUT ANY WARRANTY; without even
14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project PURPOSE.
16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project See W3C License http://www.w3.org/Consortium/Legal/ for more details.
18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */
21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpackage tests.org.w3c.dom;
23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport dalvik.annotation.TestTargets;
25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport dalvik.annotation.TestLevel;
26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport dalvik.annotation.TestTargetNew;
27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport dalvik.annotation.TestTargetClass;
28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.ArrayList;
30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.List;
31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.dom.DOMImplementation;
33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.dom.Document;
34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.dom.DOMException;
35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.dom.DocumentType;
36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport javax.xml.parsers.DocumentBuilder;
38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/**
40f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * The "createDocumentType(qualifiedName,publicId,systemId)" method for a
41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * DOMImplementation should raise NAMESPACE_ERR DOMException if qualifiedName is
42f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * malformed.
43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *
44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Retrieve the DOMImplementation on the XMLNS Document. Invoke method
45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * createDocumentType(qualifiedName,publicId,systemId) on the retrieved
46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * DOMImplementation with qualifiedName being the literal string
47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * "prefix::local", publicId as "STAFF", and systemId as "staff". Method should
48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * raise NAMESPACE_ERR DOMException.
49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *
50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @author NIST
51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @author Mary Brady
52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @see <a
53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *      href="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])">http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])</a>
54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @see <a
55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *      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>
56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @see <a
57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *      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(.,':')='NAMESPACE_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(.,':')='NAMESPACE_ERR'])</a>
58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */
59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project@TestTargetClass(DOMImplementation.class)
60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic final class CreateDocumentType extends DOMTestCase {
61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    DOMDocumentBuilderFactory factory;
63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    DocumentBuilder builder;
65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
66f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    protected void setUp() throws Exception {
67f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        super.setUp();
68f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        try {
69f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory
70f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                    .getConfiguration1());
71f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            builder = factory.getBuilder();
72f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        } catch (Exception e) {
73f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            fail("Unexpected exception" + e.getMessage());
74f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
75f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
76f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
77f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    protected void tearDown() throws Exception {
78f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        factory = null;
79f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        builder = null;
80f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        super.tearDown();
81f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
82f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
83f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
84f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Runs the test case.
85f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     *
86f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * @throws Throwable
87f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     *             Any uncaught exception causes test to fail
88f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
89f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    @TestTargetNew(
90f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        level = TestLevel.PARTIAL,
91f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        notes = "Doesn't verify null as parameters.",
92f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        method = "createDocumentType",
93f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        args = {java.lang.String.class, java.lang.String.class, java.lang.String.class}
94f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    )
95f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    public void testCreateDocumentType1() throws Throwable {
96f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String publicId = "STAFF";
97f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String systemId = "staff.xml";
98f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String malformedName = "prefix::local";
99f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        Document doc;
100f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DOMImplementation domImpl;
101f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
102f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        doc = (Document) load("staffNS", builder);
103f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        domImpl = doc.getImplementation();
104f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
105f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        {
106f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            boolean success = false;
107f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            try {
108f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                domImpl.createDocumentType(malformedName, publicId, systemId);
109f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            } catch (DOMException ex) {
110f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                success = (ex.code == DOMException.NAMESPACE_ERR);
111f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            }
112f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            assertTrue("throw_NAMESPACE_ERR", success);
113f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
114f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
115f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    @TestTargetNew(
116f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        level = TestLevel.PARTIAL,
117f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        notes = "Doesn't verify null as parameters.",
118f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        method = "createDocumentType",
119f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        args = {java.lang.String.class, java.lang.String.class, java.lang.String.class}
120f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    )
121f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    public void testCreateDocumentType2() throws Throwable {
122f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String publicId = "http://www.localhost.com/";
123f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String systemId = "myDoc.dtd";
124f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String qualifiedName;
125f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        Document doc;
126f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
127f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DOMImplementation domImpl;
128f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        List<String> illegalQNames = new ArrayList<String>();
129f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:{");
130f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:}");
131f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:~");
132f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:'");
133f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:!");
134f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:@");
135f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:#");
136f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:$");
137f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:%");
138f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:^");
139f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:&");
140f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:*");
141f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:(");
142f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:)");
143f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:+");
144f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:=");
145f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:[");
146f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:]");
147f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:\\");
148f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:/");
149f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:;");
150f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:`");
151f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:<");
152f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:>");
153f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:,");
154f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:a ");
155f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        illegalQNames.add("edi:\"");
156f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
157f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        doc = (Document) load("staffNS", builder);
158f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        for (int indexN1009A = 0; indexN1009A < illegalQNames.size(); indexN1009A++) {
159f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            qualifiedName = (String) illegalQNames.get(indexN1009A);
160f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            domImpl = doc.getImplementation();
161f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
162f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            {
163f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                boolean success = false;
164f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                try {
165f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                    domImpl.createDocumentType(qualifiedName, publicId,
166f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                            systemId);
167f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                } catch (DOMException ex) {
168f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                    success = (ex.code == DOMException.INVALID_CHARACTER_ERR);
169f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                }
170f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                assertTrue("throw_INVALID_CHARACTER_ERR", success);
171f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            }
172f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
173f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
174f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    @TestTargetNew(
175f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        level = TestLevel.PARTIAL,
176f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        notes = "Doesn't verify null as parameters.",
177f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        method = "createDocumentType",
178f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        args = {java.lang.String.class, java.lang.String.class, java.lang.String.class}
179f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    )
180f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    public void testCreateDocumentType3() throws Throwable {
181f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
182f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String qualifiedName = "prefix:myDoc";
183f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String publicId = "http://www.localhost.com";
184f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String systemId = "myDoc.dtd";
185f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        Document doc;
186f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DOMImplementation domImpl;
187f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DocumentType newType = null;
188f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
189f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String nodeName;
190f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String nodeValue;
191f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        doc = (Document) load("staffNS", builder);
192f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        domImpl = doc.getImplementation();
193f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        newType = domImpl.createDocumentType(qualifiedName, publicId, systemId);
194f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        nodeName = newType.getNodeName();
195f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals("nodeName", "prefix:myDoc", nodeName);
196f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        nodeValue = newType.getNodeValue();
197f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertNull("nodeValue", nodeValue);
198f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
199f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    @TestTargetNew(
200f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        level = TestLevel.PARTIAL,
201f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        notes = "Doesn't verify null as parameters.",
202f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        method = "createDocumentType",
203f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        args = {java.lang.String.class, java.lang.String.class, java.lang.String.class}
204f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    )
205f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    public void testCreateDocumentType4() throws Throwable {
206f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String publicId = "http://www.example.com/";
207f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String systemId = "myDoc.dtd";
208f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
209f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DOMImplementation domImpl;
210f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        domImpl = builder.getDOMImplementation();
211f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
212f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        {
213f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            boolean success = false;
214f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            try {
215f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                domImpl.createDocumentType("", publicId, systemId);
216f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            } catch (DOMException ex) {
217f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                success = (ex.code == DOMException.NAMESPACE_ERR);
218f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            }
219f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            assertTrue("throw_NAMESPACE_ERR", success);
220f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
221f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
222f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project}
223