1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage tests.org.w3c.dom;
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Element;
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Attr;
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport org.w3c.dom.Document;
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport javax.xml.parsers.DocumentBuilder;
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The method removeAttributeNS removes an attribute by local name and namespace
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * URI. Create a new element and add a new attribute node to it. Remove the
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * attribute node using the removeAttributeNodeNS method. Check if the attribute
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * was remove by invoking the hasAttributeNS method on the element and check if
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * it returns false.
15f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author IBM
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @author Neil Delima
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * @see <a
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *      href="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElRemAtNS">http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElRemAtNS</a>
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic final class ElementRemoveAttributeNS extends DOMTestCase {
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DOMDocumentBuilderFactory factory;
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    DocumentBuilder builder;
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void setUp() throws Exception {
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.setUp();
29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        try {
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                    .getConfiguration1());
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            builder = factory.getBuilder();
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        } catch (Exception e) {
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            fail("Unexpected exception" + e.getMessage());
35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        }
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    protected void tearDown() throws Exception {
39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        factory = null;
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        builder = null;
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        super.tearDown();
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Runs the test case.
46f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes     *
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * @throws Throwable
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     *             Any uncaught exception causes test to fail
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testRemoveAttributeNS() throws Throwable {
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Document doc;
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Element element;
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        boolean state;
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        Attr attribute;
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        doc = (Document) load("staff", builder);
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element = doc.createElementNS("http://www.w3.org/DOM", "elem");
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        attribute = doc.createAttributeNS(
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                "http://www.w3.org/DOM/Test/createAttributeNS", "attr");
60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element.setAttributeNodeNS(attribute);
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        element.removeAttributeNS(
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                "http://www.w3.org/DOM/Test/createAttributeNS", "attr");
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        state = element.hasAttributeNS(
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project                "http://www.w3.org/DOM/Test/createAttributeNS", "attr");
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertFalse("elementremoveattributens01", state);
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
69