You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by mm...@apache.org on 2004/09/16 03:22:55 UTC
svn commit: rev 46142 - incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/processor/reflection
Author: mmerz
Date: Wed Sep 15 18:22:54 2004
New Revision: 46142
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/processor/reflection/ReflectionProcessingTest.java
Log:
Added test for the reflection annotation processing.
Contributor: Daryoush Mehrtash
Modified: incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/processor/reflection/ReflectionProcessingTest.java
==============================================================================
--- incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/processor/reflection/ReflectionProcessingTest.java (original)
+++ incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/processor/reflection/ReflectionProcessingTest.java Wed Sep 15 18:22:54 2004
@@ -1,24 +1,85 @@
package org.apache.beehive.wsm.jsr181.processor.reflection;
+import java.util.Collection;
+import java.util.List;
+
import junit.framework.TestCase;
+import org.apache.beehive.wsm.jsr181.model.WebServiceMETHODMetadata;
+import org.apache.beehive.wsm.jsr181.model.WebServicePARAMETERMetadata;
import org.apache.beehive.wsm.jsr181.model.WebServiceTYPEMetadata;
import org.apache.beehive.wsm.jsr181.processor.reflection.WsmReflectionAnnotationProcessor;
-
public class ReflectionProcessingTest extends TestCase {
-
- public void setUp( ) {
+
+ public void setUp() {
}
-
- public void tearDown( ) {
-
+
+ public void tearDown() {
+
}
+
public void testMetaDataFromCompiledClass() throws Exception {
- WebServiceTYPEMetadata model= WsmReflectionAnnotationProcessor.getObjectModel(Class.forName("Foo"));
- assertTrue("Unexpected Webservice name", model.getWsName().compareTo("Abacus") == 0);
- }
+ WebServiceTYPEMetadata model = WsmReflectionAnnotationProcessor
+ .getObjectModel(Class.forName("Foo"));
+ assertTrue("Unexpected Webservice name", model.getWsName().compareTo(
+ "Abacus") == 0);
+
+ //TODO: get the endpointInterface
+
+ assertTrue(model.getWsTargetNamespace().compareTo(
+ "http://www.superflaco.com/AnnotationTest") == 0);
+ Collection<WebServiceMETHODMetadata> methods = model.getMethods();
+ for (WebServiceMETHODMetadata nxtMethod : methods) {
+ if (nxtMethod.getWmOperationName().compareTo("GoLoco") == 0) {
+ assertTrue(nxtMethod.getWmAction().compareTo("LocoAction") == 0);
+ assertTrue(nxtMethod.getWrName().compareTo("result") == 0);
+ // test parameters
+
+ List<WebServicePARAMETERMetadata> params = nxtMethod
+ .getParams();
+ for (WebServicePARAMETERMetadata nxtParam : params) {
+
+ if (nxtParam.getWpName().compareTo("in0") == 0) {
+ assertTrue("Invalid return type: "
+ + nxtParam.getJavaType(), nxtParam
+ .getJavaType() == int.class);
+ } else if (nxtParam.getWpName().compareTo("detail") == 0) {
+ assertTrue("Invalid return type: "
+ + nxtParam.getJavaType(), nxtParam
+ .getJavaType() == String.class);
+
+ } else {
+ assertTrue("Found an unexpected parameter: "
+ + nxtParam.getJavaType(), false);
+
+ }
+ }
+ } else if (nxtMethod.getWmOperationName().compareTo("goHome") == 0) {
+ assertTrue(nxtMethod.isOneWay());
+ List<WebServicePARAMETERMetadata> params = nxtMethod
+ .getParams();
+ // test parameters
+ for (WebServicePARAMETERMetadata nxtParam : params) {
+
+ if (nxtParam.getWpName().compareTo("when") == 0) {
+ assertTrue("Invalid return type: "
+ + nxtParam.getJavaType(), nxtParam
+ .getJavaType() == long.class);
+ } else {
+ assertTrue("Found an unexpected parameter: "
+ + nxtParam.getJavaType(), false);
+
+ }
+ }
+
+ } else {
+ assertTrue("Found an unexpected method: "
+ + nxtMethod.getWmOperationName(), false);
+ }
+
+ }
+ }
+}
-
-}
\ No newline at end of file