You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2015/11/19 22:28:18 UTC
cxf git commit: [CXF-6676] Adding a test
Repository: cxf
Updated Branches:
refs/heads/master 826bf21ae -> bfe64272d
[CXF-6676] Adding a test
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/bfe64272
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/bfe64272
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/bfe64272
Branch: refs/heads/master
Commit: bfe64272daa1f32d40eeb0b16d000c54a134b1d2
Parents: 826bf21
Author: Sergey Beryozkin <sb...@gmail.com>
Authored: Thu Nov 19 21:28:00 2015 +0000
Committer: Sergey Beryozkin <sb...@gmail.com>
Committed: Thu Nov 19 21:28:00 2015 +0000
----------------------------------------------------------------------
.../tools/wadlto/jaxrs/JAXRSContainerTest.java | 48 ++++++++++++++++++++
.../src/test/resources/wadl/testComplexPath.xml | 13 ++++++
2 files changed, 61 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/bfe64272/tools/wadlto/jaxrs/src/test/java/org/apache/cxf/tools/wadlto/jaxrs/JAXRSContainerTest.java
----------------------------------------------------------------------
diff --git a/tools/wadlto/jaxrs/src/test/java/org/apache/cxf/tools/wadlto/jaxrs/JAXRSContainerTest.java b/tools/wadlto/jaxrs/src/test/java/org/apache/cxf/tools/wadlto/jaxrs/JAXRSContainerTest.java
index 5c0ab34..bbcde20 100644
--- a/tools/wadlto/jaxrs/src/test/java/org/apache/cxf/tools/wadlto/jaxrs/JAXRSContainerTest.java
+++ b/tools/wadlto/jaxrs/src/test/java/org/apache/cxf/tools/wadlto/jaxrs/JAXRSContainerTest.java
@@ -28,7 +28,10 @@ import java.net.URLClassLoader;
import java.util.List;
import javax.ws.rs.Consumes;
+import javax.ws.rs.GET;
import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
import javax.ws.rs.QueryParam;
import org.apache.cxf.helpers.FileUtils;
@@ -405,6 +408,51 @@ public class JAXRSContainerTest extends ProcessorTestBase {
}
}
+ @Test
+ public void testComplexPath() {
+ try {
+ JAXRSContainer container = new JAXRSContainer(null);
+
+ ToolContext context = new ToolContext();
+ context.put(WadlToolConstants.CFG_OUTPUTDIR, output.getCanonicalPath());
+ context.put(WadlToolConstants.CFG_WADLURL, getLocation("/wadl/testComplexPath.xml"));
+ context.put(WadlToolConstants.CFG_COMPILE, "true");
+
+ container.setContext(context);
+ container.execute();
+
+ assertNotNull(output.list());
+
+ List<File> files = FileUtils.getFilesRecurse(output, ".+\\." + "class" + "$");
+ assertEquals(1, files.size());
+ assertTrue(checkContains(files, "application.Resource.class"));
+ @SuppressWarnings("resource")
+ ClassLoader loader = new URLClassLoader(new URL[] {output.toURI().toURL() });
+
+ Class<?> test1 = loader.loadClass("application.Resource");
+ Method[] test1Methods = test1.getDeclaredMethods();
+ assertEquals(1, test1Methods.length);
+ assertEquals(2, test1Methods[0].getAnnotations().length);
+ assertNotNull(test1Methods[0].getAnnotation(GET.class));
+ Path path = test1Methods[0].getAnnotation(Path.class);
+ assertNotNull(path);
+ assertEquals("/get-add-method", path.value());
+
+ assertEquals("getGetaddmethod", test1Methods[0].getName());
+ Class<?>[] paramTypes = test1Methods[0].getParameterTypes();
+ assertEquals(1, paramTypes.length);
+ Annotation[][] paramAnns = test1Methods[0].getParameterAnnotations();
+ assertEquals(String.class, paramTypes[0]);
+ assertEquals(1, paramAnns[0].length);
+ PathParam test1PathParam1 = (PathParam)paramAnns[0][0];
+ assertEquals("id", test1PathParam1.value());
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ fail();
+ }
+ }
+
@Test
public void testCodeGenWithImportedSchemaAndResourceSet() {
try {
http://git-wip-us.apache.org/repos/asf/cxf/blob/bfe64272/tools/wadlto/jaxrs/src/test/resources/wadl/testComplexPath.xml
----------------------------------------------------------------------
diff --git a/tools/wadlto/jaxrs/src/test/resources/wadl/testComplexPath.xml b/tools/wadlto/jaxrs/src/test/resources/wadl/testComplexPath.xml
new file mode 100644
index 0000000..372ca85
--- /dev/null
+++ b/tools/wadlto/jaxrs/src/test/resources/wadl/testComplexPath.xml
@@ -0,0 +1,13 @@
+<application xmlns="http://wadl.dev.java.net/2009/02" xmlns:xs="http://www.w3.org/2001/XMLSchema" >
+ <grammars />
+ <resources>
+ <resource path="/">
+ <resource path="/get-add-method">
+ <param name="id" style="template"/>
+ <method name="GET">
+ <response/>
+ </method>
+ </resource>
+ </resource>
+ </resources>
+</application>