Author: veithen
Date: Wed Dec  2 19:50:57 2015
New Revision: 1717671

URL: http://svn.apache.org/viewvc?rev=1717671&view=rev
Log:
Increase test coverage and add Javadoc.

Modified:
    
webservices/axiom/branches/datatypes/datatypes/src/main/java/org/apache/axiom/datatype/ContextAccessor.java
    
webservices/axiom/branches/datatypes/datatypes/src/test/java/org/apache/axiom/datatype/helper/dom/DOMHelperTest.java

Modified: 
webservices/axiom/branches/datatypes/datatypes/src/main/java/org/apache/axiom/datatype/ContextAccessor.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/branches/datatypes/datatypes/src/main/java/org/apache/axiom/datatype/ContextAccessor.java?rev=1717671&r1=1717670&r2=1717671&view=diff
==============================================================================
--- 
webservices/axiom/branches/datatypes/datatypes/src/main/java/org/apache/axiom/datatype/ContextAccessor.java
 (original)
+++ 
webservices/axiom/branches/datatypes/datatypes/src/main/java/org/apache/axiom/datatype/ContextAccessor.java
 Wed Dec  2 19:50:57 2015
@@ -19,6 +19,24 @@
 package org.apache.axiom.datatype;
 
 public interface ContextAccessor<T,O> {
+    /**
+     * Look up the namespace URI associated to the given prefix.
+     * 
+     * @param contextObject
+     *            The context object passed to
+     *            {@link Type#parse(String, ContextAccessor, Object, Object)} 
or
+     *            {@link Type#format(Object, ContextAccessor, Object, Object)}.
+     * @param options
+     *            The options passed to {@link Type#parse(String, 
ContextAccessor, Object, Object)}
+     *            or {@link Type#format(Object, ContextAccessor, Object, 
Object)}.
+     * @param prefix
+     *            The prefix to look for. If this parameter is the empty 
string, then the URI of the
+     *            default namespace will be returned.
+     * @return the namespace URI or <code>null</code> if the prefix is not 
bound; if the prefix is
+     *         the empty string and no default namespace declaration exists, 
then an empty string is
+     *         returned
+     */
     String lookupNamespaceURI(T contextObject, O options, String prefix);
+    
     String lookupPrefix(T contextObject, O options, String namespaceURI);
 }

Modified: 
webservices/axiom/branches/datatypes/datatypes/src/test/java/org/apache/axiom/datatype/helper/dom/DOMHelperTest.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/branches/datatypes/datatypes/src/test/java/org/apache/axiom/datatype/helper/dom/DOMHelperTest.java?rev=1717671&r1=1717670&r2=1717671&view=diff
==============================================================================
--- 
webservices/axiom/branches/datatypes/datatypes/src/test/java/org/apache/axiom/datatype/helper/dom/DOMHelperTest.java
 (original)
+++ 
webservices/axiom/branches/datatypes/datatypes/src/test/java/org/apache/axiom/datatype/helper/dom/DOMHelperTest.java
 Wed Dec  2 19:50:57 2015
@@ -20,6 +20,8 @@ package org.apache.axiom.datatype.helper
 
 import static com.google.common.truth.Truth.assertThat;
 
+import java.text.ParseException;
+
 import javax.xml.namespace.QName;
 import javax.xml.parsers.DocumentBuilderFactory;
 
@@ -29,9 +31,13 @@ import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
 public class DOMHelperTest {
+    private static Document newDocument() throws Exception {
+        return 
DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
+    }
+    
     @Test
     public void testGetQNameFromElement() throws Exception {
-        Document document = 
DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
+        Document document = newDocument();
         Element element = document.createElementNS("urn:test", "p:elem");
         element.setTextContent("p:value");
         QName qname = DOMHelper.getValue(element, XSQNameType.INSTANCE);
@@ -39,4 +45,23 @@ public class DOMHelperTest {
         assertThat(qname.getLocalPart()).isEqualTo("value");
         assertThat(qname.getPrefix()).isEqualTo("p");
     }
+    
+    @Test(expected=ParseException.class)
+    public void testGetQNameFromElementUnboundPrefix() throws Exception {
+        Document document = newDocument();
+        Element element = document.createElementNS(null, "test");
+        element.setTextContent("ns:test");
+        DOMHelper.getValue(element, XSQNameType.INSTANCE);
+    }
+    
+    @Test
+    public void testGetQNameFromElementNoDefaultNamespace() throws Exception {
+        Document document = newDocument();
+        Element element = document.createElementNS("urn:test", "p:test");
+        element.setTextContent("value");
+        QName qname = DOMHelper.getValue(element, XSQNameType.INSTANCE);
+        assertThat(qname.getNamespaceURI()).isEmpty();
+        assertThat(qname.getLocalPart()).isEqualTo("value");
+        assertThat(qname.getPrefix()).isEmpty();
+    }
 }


Reply via email to