summaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2008-08-27 07:19:01 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2008-08-27 07:19:01 +0000
commit3003a6f50fec482a1c58a99dd7b058e85a20af23 (patch)
tree28fa5fe86252ef041a62e33ed77b8c08cfb5d48d /java
parent80c63758347630688553825bedb35c7428cb4488 (diff)
Updating json-rpc binding test case to reproduce problems when passing an array to a function invocation
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@689394 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r--java/sca/modules/binding-jsonrpc-runtime/src/test/java/bean/TestBean.java10
-rw-r--r--java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/Echo.java2
-rw-r--r--java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/EchoComponentImpl.java7
-rw-r--r--java/sca/modules/binding-jsonrpc-runtime/src/test/java/org/apache/tuscany/sca/binding/jsonrpc/JSONRPCDataTypeTestCase.java38
4 files changed, 44 insertions, 13 deletions
diff --git a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/bean/TestBean.java b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/bean/TestBean.java
index a7ee5997a3..4b159fb563 100644
--- a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/bean/TestBean.java
+++ b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/bean/TestBean.java
@@ -20,7 +20,9 @@ package bean;
public class TestBean {
private String testString;
+ private String[] testStringArray;
private int testInt;
+
public String getTestString() {
return testString;
@@ -30,6 +32,14 @@ public class TestBean {
this.testString = testString;
}
+ public String[] getTestStringArray() {
+ return testStringArray;
+ }
+
+ public void setStringArray(String[] stringArray) {
+ this.testStringArray = stringArray;
+ }
+
public int getTestInt() {
return testInt;
}
diff --git a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/Echo.java b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/Echo.java
index 920626ab8f..3017861b99 100644
--- a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/Echo.java
+++ b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/Echo.java
@@ -53,6 +53,8 @@ public interface Echo {
List echoList(ArrayList list);
+ String [] echoArray(String[] stringArray);
+
Set echoSet(HashSet set);
}
diff --git a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/EchoComponentImpl.java b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/EchoComponentImpl.java
index fd51eb0da1..aead6e2959 100644
--- a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/EchoComponentImpl.java
+++ b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/echo/EchoComponentImpl.java
@@ -28,9 +28,6 @@ import java.util.Set;
import bean.TestBean;
-
-
-
/**
* A simple client component that uses a reference with an JSONRPC binding.
*
@@ -84,6 +81,10 @@ public class EchoComponentImpl implements Echo {
return list;
}
+ public String[] echoArray(String[] stringArray) {
+ return stringArray;
+ }
+
public Set echoSet(HashSet param){
Set set = new HashSet();
set = param;
diff --git a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/org/apache/tuscany/sca/binding/jsonrpc/JSONRPCDataTypeTestCase.java b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/org/apache/tuscany/sca/binding/jsonrpc/JSONRPCDataTypeTestCase.java
index ca56ac9519..c4c3151739 100644
--- a/java/sca/modules/binding-jsonrpc-runtime/src/test/java/org/apache/tuscany/sca/binding/jsonrpc/JSONRPCDataTypeTestCase.java
+++ b/java/sca/modules/binding-jsonrpc-runtime/src/test/java/org/apache/tuscany/sca/binding/jsonrpc/JSONRPCDataTypeTestCase.java
@@ -26,6 +26,7 @@ import org.apache.tuscany.sca.host.embedded.SCADomain;
import org.json.JSONObject;
import org.junit.After;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import com.meterware.httpunit.PostMethodWebRequest;
@@ -102,6 +103,23 @@ public class JSONRPCDataTypeTestCase {
Assert.assertEquals("JSON-RPC", jsonResp.getJSONObject("result").getJSONObject("map").getString("Binding"));
}
+
+ @Test
+ public void testBean() throws Exception {
+ JSONObject jsonRequest = new JSONObject(
+ "{ \"method\": \"echoBean\", \"params\": [ {\"javaClass\": \"bean.TestBean\", \"testString\": \"JSON-RPC\", \"testInt\":1234}], \"id\": 7}");
+
+ WebConversation wc = new WebConversation();
+ WebRequest request = new PostMethodWebRequest(SERVICE_URL,
+ new ByteArrayInputStream(jsonRequest.toString().getBytes("UTF-8")), "application/json");
+ WebResponse response = wc.getResource(request);
+
+ Assert.assertEquals(200, response.getResponseCode());
+
+ JSONObject jsonResp = new JSONObject(response.getText());
+
+ Assert.assertEquals("JSON-RPC", jsonResp.getJSONObject("result").getString("testString"));
+ }
@Test
public void testList() throws Exception {
@@ -119,11 +137,12 @@ public class JSONRPCDataTypeTestCase {
Assert.assertEquals(0, jsonResp.getJSONObject("result").getJSONArray("list").get(0));
}
-
- @Test
- public void testSet() throws Exception {
+
+ //@Test
+ @Ignore("TUSCANY-2565")
+ public void testArray() throws Exception {
JSONObject jsonRequest = new JSONObject(
- "{ \"method\": \"echoSet\", \"params\": [ {\"javaClass\": \"java.util.HashSet\", \"set\": {\"1\": \"red\", \"2\": \"blue\"}}],\"id\": 9}");
+ "{\"params\":[\"1\",\"2\"],\"method\":\"echoArray\",\"id\":9}");
WebConversation wc = new WebConversation();
WebRequest request = new PostMethodWebRequest(SERVICE_URL,
@@ -134,13 +153,13 @@ public class JSONRPCDataTypeTestCase {
JSONObject jsonResp = new JSONObject(response.getText());
- Assert.assertEquals("red", jsonResp.getJSONObject("result").getJSONObject("set").getString("red"));
- }
+ Assert.assertEquals(0, jsonResp.getJSONObject("result").getJSONArray("list").get(0));
+ }
@Test
- public void testBean() throws Exception {
+ public void testSet() throws Exception {
JSONObject jsonRequest = new JSONObject(
- "{ \"method\": \"echoBean\", \"params\": [ {\"javaClass\": \"bean.TestBean\", \"testString\": \"JSON-RPC\", \"testInt\":1234}], \"id\": 7}");
+ "{ \"method\": \"echoSet\", \"params\": [ {\"javaClass\": \"java.util.HashSet\", \"set\": {\"1\": \"red\", \"2\": \"blue\"}}],\"id\": 10}");
WebConversation wc = new WebConversation();
WebRequest request = new PostMethodWebRequest(SERVICE_URL,
@@ -151,7 +170,6 @@ public class JSONRPCDataTypeTestCase {
JSONObject jsonResp = new JSONObject(response.getText());
- Assert.assertEquals("JSON-RPC", jsonResp.getJSONObject("result").getString("testString"));
+ Assert.assertEquals("red", jsonResp.getJSONObject("result").getJSONObject("set").getString("red"));
}
-
} \ No newline at end of file