Bug 5085: Clean-up test and retest JUnit tests
[yangtools.git] / yang / yang-data-jaxen / src / test / java / org / opendaylight / yangtools / yang / data / jaxen / JaxenTest.java
index 93557596f6bca4fcdbdcb27ae561e3e2c7e8a4ae..be8ba083f66f2ac8ff6d1b5e81a81160319da522 100644 (file)
@@ -11,6 +11,8 @@ package org.opendaylight.yangtools.yang.data.jaxen;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import static org.mockito.Mockito.mock;
 
 import com.google.common.base.Converter;
 import com.google.common.base.Optional;
@@ -22,9 +24,13 @@ import java.io.IOException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.text.ParseException;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Map;
 import javax.xml.xpath.XPathExpressionException;
+import org.jaxen.Context;
+import org.jaxen.Function;
+import org.jaxen.FunctionCallException;
 import org.jaxen.UnresolvableException;
 import org.jaxen.UnsupportedAxisException;
 import org.junit.Before;
@@ -41,6 +47,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.xpath.XPathResult;
 import org.opendaylight.yangtools.yang.data.api.schema.xpath.XPathSchemaContext;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
+import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
 
 public class JaxenTest {
     private ConverterNamespaceContext convertNctx;
@@ -61,7 +68,7 @@ public class JaxenTest {
 
     @Before
     public void setup() throws URISyntaxException, IOException, ParseException, XPathExpressionException,
-            UnsupportedAxisException {
+            UnsupportedAxisException, ReactorException {
         final SchemaContext schemaContext = createSchemaContext();
         assertNotNull(schemaContext);
 
@@ -143,10 +150,20 @@ public class JaxenTest {
     }
 
     @Test(expected = UnresolvableException.class)
-    public void testYangFunctionContext() throws UnresolvableException {
-        YangFunctionContext yangFun = YangFunctionContext.getInstance();
+    public void testYangFunctionContext() throws UnresolvableException, FunctionCallException {
+        final YangFunctionContext yangFun = YangFunctionContext.getInstance();
         assertNotNull(yangFun);
-        assertNotNull(yangFun.getFunction("urn:opendaylight.test2", null, "current"));
+        final Function function = yangFun.getFunction("urn:opendaylight.test2", null, "current");
+        assertNotNull(function);
+
+        try {
+            final Context context = mock(Context.class);
+            final ArrayList<Object> list = new ArrayList<>();
+            function.call(context, list);
+            fail();
+        } catch (VerifyException e) {
+        }
+
         yangFun.getFunction("urn:opendaylight.test2", "test2", "root");
     }
 
@@ -198,8 +215,8 @@ public class JaxenTest {
         return SchemaPath.create(true, rootQName, listAQName, leafAQName);
     }
 
-    private SchemaContext createSchemaContext() throws IOException, URISyntaxException {
-        return TestUtils.loadSchemaContext(getClass().getResource("/test/documentTest").toURI());
+    private SchemaContext createSchemaContext() throws IOException, URISyntaxException, ReactorException {
+        return TestUtils.loadModules("/test/documentTest");
     }
 
     private static NormalizedNode<?, ?> createNormalizedNodes() {