From 9a1db05d734f900195f5df2e079eb40c374a1573 Mon Sep 17 00:00:00 2001 From: nash Date: Mon, 25 Oct 2010 12:23:58 +0000 Subject: Merge r1000615 TUSCANY-3685: Add a test client that doesn't use JUnit and update the build.xml and README files git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1027086 13f79535-47bb-0310-9956-ffa450edef68 --- .../samples/implementation-pojo-extension/README | 38 ++++++++++++++++++-- .../implementation-pojo-extension/build.xml | 40 +++++++++++++++++----- .../test/java/helloworld/HelloWorldTestClient.java | 40 ++++++++++++++++++++++ 3 files changed, 107 insertions(+), 11 deletions(-) create mode 100644 sca-java-1.x/trunk/samples/implementation-pojo-extension/src/test/java/helloworld/HelloWorldTestClient.java (limited to 'sca-java-1.x/trunk') diff --git a/sca-java-1.x/trunk/samples/implementation-pojo-extension/README b/sca-java-1.x/trunk/samples/implementation-pojo-extension/README index 3b201779e1..9c11fa08ea 100644 --- a/sca-java-1.x/trunk/samples/implementation-pojo-extension/README +++ b/sca-java-1.x/trunk/samples/implementation-pojo-extension/README @@ -7,6 +7,28 @@ The README in the samples directory (the directory above this) provides general instructions about building and running samples. Take a look there first. +If you just want to run it to see what happens, open a command prompt, +navigate to this sample directory, and do + +ant run + +OR if you don't have ant, on Windows do + +java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-implementation-pojo-extension.jar;target\test-classes helloworld.HelloWorldTestClient + +and on *nix do + +java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-implementation-pojo-extension.jar:target/test-classes helloworld.HelloWorldTestClient + +This looks like a long command. The three things we add to the classpath are + +tuscany-sca-manifest.jar - all of the standard Tuscany SCA + runtime and extension classes +sample-implementation-pojo-extension.jar - the new POJO implementation + extension +target.test-classes - application code that uses the + POJO implementation + Sample Overview --------------- This sample contains a POJO implementation type as an example of how to create @@ -26,6 +48,7 @@ implementation-pojo-extension/ java/ helloworld/ HelloWorldTestCase.java - JUnit test case + HelloWorldTestClient.java - Test client with no JUnit dependency resources/ helloworld.composite - the SCA assembly used during unit testing @@ -34,11 +57,22 @@ implementation-pojo-extension/ Building The Sample Extension Using Ant ----------------------------------------- -With the binary distribution the sample extension can be built using Ant as -follows +With the binary distribution the sample extension can be built and run +using Ant as follows cd implementation-pojo-extension ant compile +ant run + +You should see the following output from the run target. + +run: + [java] Initializing POJO + [java] Initializing POJO + [java] Executing POJO sayHello + [java] Executing POJO sayHello + [java] Destroying POJO + [java] Destroying POJO Building The Sample Using Maven ------------------------------------------- diff --git a/sca-java-1.x/trunk/samples/implementation-pojo-extension/build.xml b/sca-java-1.x/trunk/samples/implementation-pojo-extension/build.xml index 78bae79859..9f4869cfa1 100644 --- a/sca-java-1.x/trunk/samples/implementation-pojo-extension/build.xml +++ b/sca-java-1.x/trunk/samples/implementation-pojo-extension/build.xml @@ -17,10 +17,10 @@ * under the License. --> - + @@ -36,16 +36,38 @@ - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - + + diff --git a/sca-java-1.x/trunk/samples/implementation-pojo-extension/src/test/java/helloworld/HelloWorldTestClient.java b/sca-java-1.x/trunk/samples/implementation-pojo-extension/src/test/java/helloworld/HelloWorldTestClient.java new file mode 100644 index 0000000000..c157dadb66 --- /dev/null +++ b/sca-java-1.x/trunk/samples/implementation-pojo-extension/src/test/java/helloworld/HelloWorldTestClient.java @@ -0,0 +1,40 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package helloworld; + +import org.apache.tuscany.sca.host.embedded.SCADomain; + +/** + * Tests the POJO implementation extension. + */ +public class HelloWorldTestClient { + + public static void main(String[] args) throws Exception { + + SCADomain scaDomain = SCADomain.newInstance("helloworld/helloworld.composite"); + + HelloWorld helloworld = scaDomain.getService(HelloWorld.class, "HelloWorldComponent"); + assert "Hello petra".equals(helloworld.sayHello("petra")); + + helloworld = scaDomain.getService(HelloWorld.class, "HelloWorldComponent2/HelloWorld2"); + assert "Hello petra".equals(helloworld.sayHello("petra")); + + scaDomain.close(); + } +} -- cgit v1.2.3