From e1fff8c90a9743b448b6fa9446df8330fd399da0 Mon Sep 17 00:00:00 2001 From: edwardsmj Date: Wed, 14 Jan 2009 12:12:37 +0000 Subject: ASM_0013_TestCase added git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@734362 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/main/java/test/service1Impl4.java | 49 ++++++++++ .../src/main/resources/TestComposite7.composite | 48 ++++++++++ .../src/main/resources/Test_ASM_0012.composite | 101 +++++++++++++++++++++ .../src/test/java/client/ASM_0012_TestCase.java | 48 ++++++++++ 4 files changed, 246 insertions(+) create mode 100644 java/sca/stest/sampleTest/src/main/java/test/service1Impl4.java create mode 100644 java/sca/stest/sampleTest/src/main/resources/TestComposite7.composite create mode 100644 java/sca/stest/sampleTest/src/main/resources/Test_ASM_0012.composite create mode 100644 java/sca/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java diff --git a/java/sca/stest/sampleTest/src/main/java/test/service1Impl4.java b/java/sca/stest/sampleTest/src/main/java/test/service1Impl4.java new file mode 100644 index 0000000000..2cb04a5d5c --- /dev/null +++ b/java/sca/stest/sampleTest/src/main/java/test/service1Impl4.java @@ -0,0 +1,49 @@ +/* + * 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 test; + +import org.osoa.sca.annotations.*; + +/** + * Enhanced Java component implementation for business interface Service1, + * where the implementation also has a single reference using the Service1 + * interface with multiplicity 0..n all of which and which get called when + * operation1 is invoked + * @author MikeEdwards + * + */ +@Service(Service1.class) +public class service1Impl4 implements Service1 { + + @Property + public String serviceName = "service1"; + // Required = false + an array -> multiplicity 0..n + @Reference(required=false) + public Service1[] reference1 = null; + + public String operation1(String input) { + String result = ""; + // Call each of the references in the array, concatenating the results + for( int i=0 ; i < reference1.length; i++ ) { + result = result.concat( reference1[i].operation1(input) ); + } // end for + return serviceName + " operation1 invoked" + " " + result; + } + +} diff --git a/java/sca/stest/sampleTest/src/main/resources/TestComposite7.composite b/java/sca/stest/sampleTest/src/main/resources/TestComposite7.composite new file mode 100644 index 0000000000..82a71288ff --- /dev/null +++ b/java/sca/stest/sampleTest/src/main/resources/TestComposite7.composite @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/java/sca/stest/sampleTest/src/main/resources/Test_ASM_0012.composite b/java/sca/stest/sampleTest/src/main/resources/Test_ASM_0012.composite new file mode 100644 index 0000000000..bd945f443b --- /dev/null +++ b/java/sca/stest/sampleTest/src/main/resources/Test_ASM_0012.composite @@ -0,0 +1,101 @@ + + + + + + + + + + + + + ASM_0012 + + + + + + + + service1 + + + + + + + + + + + + service2 + + + + + + + + + + + + service3 + + + + + + + + + + + + service4 + + + + + + + + + + + + service5 + + + diff --git a/java/sca/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java b/java/sca/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java new file mode 100644 index 0000000000..32a680f47f --- /dev/null +++ b/java/sca/stest/sampleTest/src/test/java/client/ASM_0012_TestCase.java @@ -0,0 +1,48 @@ +/* + * 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 client; + + +import test.ASM_0002_Client; +import testClient.TestInvocation; + +/** + * Client for ASM_0012_TestCase, which tests that the the multiplicity + * of a element of a can be any one of 0..1, + * 1..1, 0..n, 1..n where the multiplicity of the equivalent + * element in the of the of the + * is 0..n + */ +public class ASM_0012_TestCase extends BaseJAXWSTestCase { + + + protected TestConfiguration getTestConfiguration() { + TestConfiguration config = new TestConfiguration(); + config.testName = "ASM_0012"; + config.input = "request"; + config.output = "ASM_0012 request service1 operation1 invoked service2 operation1 invoked" + + " service3 operation1 invoked service4 operation1 invoked service5 operation1 invoked"; + config.composite = "Test_ASM_0012.composite"; + config.testServiceName = "TestClient"; + config.testClass = ASM_0002_Client.class; + config.serviceInterface = TestInvocation.class; + return config; + } + +} // end class Test_ASM_0003 -- cgit v1.2.3