From cac123d09b8cd10d20b974402708b07b2062a89b Mon Sep 17 00:00:00 2001 From: antelder Date: Sat, 23 Jul 2011 19:32:17 +0000 Subject: Add to the helloworld-jsonrpc testcase a test of the enpoint url git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1150198 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/test/java/sample/HelloworldTestCase.java | 31 ++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'sca-java-2.x/trunk/samples/getting-started/helloworld-jsonrpc') diff --git a/sca-java-2.x/trunk/samples/getting-started/helloworld-jsonrpc/src/test/java/sample/HelloworldTestCase.java b/sca-java-2.x/trunk/samples/getting-started/helloworld-jsonrpc/src/test/java/sample/HelloworldTestCase.java index be27aa68ef..61e53a6939 100644 --- a/sca-java-2.x/trunk/samples/getting-started/helloworld-jsonrpc/src/test/java/sample/HelloworldTestCase.java +++ b/sca-java-2.x/trunk/samples/getting-started/helloworld-jsonrpc/src/test/java/sample/HelloworldTestCase.java @@ -18,17 +18,22 @@ */ package sample; -import org.junit.Assert; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.URL; import org.apache.tuscany.sca.Node; import org.apache.tuscany.sca.TuscanyRuntime; +import org.junit.Assert; import org.junit.Test; import org.oasisopen.sca.NoSuchServiceException; public class HelloworldTestCase { @Test - public void testSayHello() throws NoSuchServiceException { + public void testSayHello() throws NoSuchServiceException, IOException { // Run the SCA composite in a Tuscany runtime Node node = TuscanyRuntime.runComposite("helloworld.composite", "target/classes"); @@ -40,9 +45,31 @@ public class HelloworldTestCase { // test that it works as expected Assert.assertEquals("Hello Amelia", helloworld.sayHello("Amelia")); + // test that has exposed an HTTP endpoint that works as expected + // JSONRPC args are base64 encoded, ["World"] = WyJXb3JsZCJd + URL url = new URL("http://localhost:8080/HelloworldComponent/Helloworld?method=sayHello¶ms=WyJXb3JsZCJd&id=1"); + Assert.assertEquals("{\"id\":1,\"result\":\"Hello World\"}", read(url.openStream())); + } finally { // Stop the Tuscany runtime Node node.stop(); } } + + private static String read(InputStream is) throws IOException { + BufferedReader reader = null; + try { + reader = new BufferedReader(new InputStreamReader(is)); + StringBuffer sb = new StringBuffer(); + String str; + while ((str = reader.readLine()) != null) { + sb.append(str); + } + return sb.toString(); + } finally { + if (reader != null) { + reader.close(); + } + } + } } -- cgit v1.2.3