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 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.Element;
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.Attr;
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport javax.xml.parsers.DocumentBuilder;
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The method hasAttributeNS returns true when an attribute with a given local
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * name and namespace URI is specified on this element or has a default value,
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * false otherwise.
35f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Retreive the first employee element node. Invoke the hasAttributeNS method to
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * check if it has the xmlns attribute that belongs to the namespace
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * http://www.w3.org/2000/xmlns/.
39f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author IBM
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author Neil Delima
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see <a
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *      href="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS">http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS</a>
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic final class ElementHasAttributeNS extends DOMTestCase {
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DOMDocumentBuilderFactory factory;
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DocumentBuilder builder;
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void setUp() throws Exception {
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.setUp();
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        try {
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                    .getConfiguration2());
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            builder = factory.getBuilder();
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        } catch (Exception e) {
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            fail("Unexpected exception" + e.getMessage());
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        }
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void tearDown() throws Exception {
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        factory = null;
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        builder = null;
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.tearDown();
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Runs the test case.
70f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     *
71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @throws Throwable
72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *             Any uncaught exception causes test to fail
73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void _testHasAttributeNS1() throws Throwable {
75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Element element;
77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        boolean state;
78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        NodeList elementList;
79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staffNS", builder);
80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        elementList = doc.getElementsByTagNameNS("*", "employee");
81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element = (Element) elementList.item(0);
82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        state = element
83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                .hasAttributeNS("http://www.w3.org/2000/xmlns/", "xmlns");
84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertTrue("elementhasattributens01", state);
85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testHasAttributeNS2() throws Throwable {
87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Element element;
89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        boolean state;
90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Attr attribute;
91f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes
92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staff", builder);
93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element = doc.createElementNS("http://www.w3.org/DOM", "address");
94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        attribute = doc.createAttributeNS("http://www.w3.org/DOM", "domestic");
95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element.setAttributeNode(attribute);
96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        state = element.hasAttributeNS("http://www.w3.org/DOM", "domestic");
97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertTrue("hasDomesticAttr", state);
98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testHasAttributeNS3() throws Throwable {
100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Element element;
102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        boolean state;
103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Attr attribute;
104f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes
105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        String nullNS = null;
106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staff", builder);
108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element = doc.createElementNS("http://www.w3.org/DOM", "address");
109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNotNull("createElementNotNull", element);
110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        attribute = doc.createAttributeNS(nullNS, "domestic");
111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element.setAttributeNode(attribute);
112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        state = element.hasAttributeNS(nullNS, "domestic");
113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertTrue("elementhasattributens03", state);
114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
116