public void testlookupNamespacePrefix() throws Exception { // Setup DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); factory.setValidating(false); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.newDocument(); Element rootElement = document.createElement("root"); Attr attr = document.createAttributeNS(SdkConstants.XMLNS_URI, "xmlns:customPrefix"); attr.setValue(SdkConstants.ANDROID_URI); rootElement.getAttributes().setNamedItemNS(attr); document.appendChild(rootElement); Element root = document.getDocumentElement(); root.appendChild(document.createTextNode(" ")); Element foo = document.createElement("foo"); root.appendChild(foo); root.appendChild(document.createTextNode(" ")); Element bar = document.createElement("bar"); root.appendChild(bar); Element baz = document.createElement("baz"); root.appendChild(baz); String prefix = XmlUtils.lookupNamespacePrefix(baz, SdkConstants.ANDROID_URI); assertEquals("customPrefix", prefix); prefix = XmlUtils.lookupNamespacePrefix(baz, "http://schemas.android.com/tools", "tools", false); assertEquals("tools", prefix); prefix = XmlUtils.lookupNamespacePrefix( baz, "http://schemas.android.com/apk/res/my/pkg", "app", false); assertEquals("app", prefix); assertFalse(declaresNamespace(document, "http://schemas.android.com/apk/res/my/pkg")); prefix = XmlUtils.lookupNamespacePrefix( baz, "http://schemas.android.com/apk/res/my/pkg", "app", true /*create*/); assertEquals("app", prefix); assertTrue(declaresNamespace(document, "http://schemas.android.com/apk/res/my/pkg")); }