1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/*
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project This Java source file was generated by test-to-java.xsl
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project and is a derived work from the source document.
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project The source document contained the following notice:
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
8f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes Copyright (c) 2001-2003 World Wide Web Consortium,
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project (Massachusetts Institute of Technology, Institut National de
10f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes Recherche en Informatique et en Automatique, Keio University).  All
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Rights Reserved.  This program is distributed under the W3C's Software
12f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes Intellectual Property License.  This program is distributed in the
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project hope that it will be useful, but WITHOUT ANY WARRANTY; without even
14f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes PURPOSE.
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project See W3C License http://www.w3.org/Consortium/Legal/ for more details.
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage tests.org.w3c.dom;
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Attr;
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Document;
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.NodeList;
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Element;
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Node;
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport javax.xml.parsers.DocumentBuilder;
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The "getNamespaceURI()" method for an Attribute returns the namespace URI of
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * this node, or null if unspecified.
35f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Retrieve the first "emp:address" node which has an attribute of
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * "emp:district" that is specified in the DTD. Invoke the "getNamespaceURI()"
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * method on the attribute. The method should return "http://www.nist.gov".
39f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author NIST
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author Mary Brady
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see <a
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *      href="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname">http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname</a>
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see <a
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *      href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238">http://www.w3.org/Bugs/Public/show_bug.cgi?id=238</a>
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic final class NamespaceURI extends DOMTestCase {
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DOMDocumentBuilderFactory factory;
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DocumentBuilder builder;
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void setUp() throws Exception {
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.setUp();
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        try {
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                    .getConfiguration2());
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            builder = factory.getBuilder();
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        } catch (Exception e) {
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            fail("Unexpected exception" + e.getMessage());
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        }
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void tearDown() throws Exception {
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        factory = null;
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        builder = null;
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.tearDown();
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Runs the test case.
72f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     *
73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @throws Throwable
74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *             Any uncaught exception causes test to fail
75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project// Assumes validation.
77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//    public void testGetNamespaceURI1() throws Throwable {
78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        Document doc;
79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        NodeList elementList;
80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        Element testAddr;
81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        Attr addrAttr;
82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        String attrNamespaceURI;
83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        doc = (Document) load("staffNS", builder);
84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        elementList = doc.getElementsByTagName("emp:address");
85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        testAddr = (Element) elementList.item(0);
86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        addrAttr = testAddr.getAttributeNodeNS("http://www.nist.gov",
87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//                "district");
88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        attrNamespaceURI = addrAttr.getNamespaceURI();
89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//        assertEquals("namespaceURI", "http://www.nist.gov", attrNamespaceURI);
90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project//    }
91adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testGetNamespaceURI2() throws Throwable {
92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        NodeList elementList;
94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Element testAddr;
95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Attr addrAttr;
96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        String attrNamespaceURI;
97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staffNS", builder);
98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        elementList = doc.getElementsByTagName("emp:address");
99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        testAddr = (Element) elementList.item(0);
100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNotNull("empAddressNotNull", testAddr);
101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        addrAttr = testAddr.getAttributeNodeNS("http://www.nist.gov",
102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                "domestic");
103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        attrNamespaceURI = addrAttr.getNamespaceURI();
104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertEquals("namespaceURI", "http://www.nist.gov", attrNamespaceURI);
105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testGetNamespaceURI3() throws Throwable {
107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        NodeList elementList;
109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Node testEmployee;
110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        String employeeNamespace;
111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staffNS", builder);
112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        elementList = doc.getElementsByTagName("employee");
113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        testEmployee = elementList.item(0);
114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNotNull("employeeNotNull", testEmployee);
115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        employeeNamespace = testEmployee.getNamespaceURI();
116adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertEquals("namespaceURI", "http://www.nist.gov", employeeNamespace);
117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
118adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testGetNamespaceURI4() throws Throwable {
119adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
120adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        NodeList elementList;
121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Node testEmployee;
122adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        String employeeNamespace;
123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staffNS", builder);
124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        elementList = doc.getElementsByTagName("employee");
125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        testEmployee = elementList.item(1);
126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        employeeNamespace = testEmployee.getNamespaceURI();
127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNull("throw_Null", employeeNamespace);
128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
129adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
130