Author: lresende
Date: Wed May 21 22:13:23 2008
New Revision: 659008
URL: http://svn.apache.org/viewvc?rev=659008&view=rev
Log:
TUSCANY-1718 Test Case
Added:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
(with props)
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
(with props)
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
(with props)
Modified:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/hello/Hello.java
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionTestCase.java
Modified:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/hello/Hello.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/hello/Hello.java?rev=659008&r1=659007&r2=659008&view=diff
==============================================================================
---
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/hello/Hello.java
(original)
+++
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/hello/Hello.java
Wed May 21 22:13:23 2008
@@ -18,7 +18,6 @@
*/
package hello;
-
/**
* This is the business interface of the Hello service.
*/
Added:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java?rev=659008&view=auto
==============================================================================
---
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
(added)
+++
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
Wed May 21 22:13:23 2008
@@ -0,0 +1,145 @@
+/*
+ * 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 helloworld.HelloWorldService;
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.contribution.Contribution;
+import org.apache.tuscany.sca.contribution.service.ContributionService;
+import org.apache.tuscany.sca.host.embedded.impl.EmbeddedSCADomain;
+
+import junit.framework.TestCase;
+
+/**
+ * Test multiple contribution scenario
+ * Contributed by TUSCANY-1718
+ */
+public class ContributionMultipleTestCaseFIXME extends TestCase {
+
+ private String helloContribution_dir =
"target/test-classes/contribution-export";
+ private String helloWorldContribution_one_dir =
"target/test-classes/contribution-import-one";
+ private String helloWorldContribution_two_dir =
"target/test-classes/contribution-import-two";
+
+ private ClassLoader cl;
+ private EmbeddedSCADomain domain;
+ private Contribution helloContribution;
+ private Contribution helloWorldContribution_one;
+ private Contribution helloWorldContribution_two;
+
+ protected void setUp() throws Exception {
+ URL helloContribution_URL = new
java.io.File(helloContribution_dir).toURI().toURL();
+ URL helloWorldContribution_one_URL = new
java.io.File(helloWorldContribution_one_dir).toURI().toURL();
+ URL helloWorldContribution_two_URL = new
java.io.File(helloWorldContribution_two_dir).toURI().toURL();
+
+ // Create a test embedded SCA domain
+ cl = getClass().getClassLoader();
+ domain = new EmbeddedSCADomain(cl, "http://localhost");
+
+ // Start the domain
+ domain.start();
+
+ // Contribute the SCA contribution
+ ContributionService contributionService =
domain.getContributionService();
+
+ helloContribution =
+
contributionService.contribute("http://contribution-multiple/helloworld",
helloContribution_URL, false);
+
+ helloWorldContribution_one =
+
contributionService.contribute("http://contribution-multiple/helloworld_one",
helloWorldContribution_one_URL, false);
+
+ helloWorldContribution_two =
+
contributionService.contribute("http://contribution-multiple/helloworld_two",
helloWorldContribution_two_URL, false);
+
+ for (Composite deployable : helloContribution.getDeployables()) {
+ domain.getDomainComposite().getIncludes().add(deployable);
+ domain.buildComposite(deployable);
+ }
+
+ for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ domain.getDomainComposite().getIncludes().add(deployable);
+ domain.buildComposite(deployable);
+ }
+
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
+ domain.getDomainComposite().getIncludes().add(deployable);
+ domain.buildComposite(deployable);
+ }
+
+ for (Composite deployable : helloContribution.getDeployables()) {
+ domain.getCompositeActivator().activate(deployable);
+ domain.getCompositeActivator().start(deployable);
+ }
+
+ for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ domain.getCompositeActivator().activate(deployable);
+ domain.getCompositeActivator().start(deployable);
+ }
+
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
+ domain.getCompositeActivator().activate(deployable);
+ domain.getCompositeActivator().start(deployable);
+ }
+
+ }
+
+ public void testServiceCall() throws IOException {
+ HelloWorldService helloWorldService_one =
+ domain.getService(HelloWorldService.class,
"HelloWorldServiceComponent_one/HelloWorldService");
+ assertNotNull(helloWorldService_one);
+
+ assertEquals("Hello Smith",
helloWorldService_one.getGreetings("Smith"));
+
+ HelloWorldService helloWorldService_two =
+ domain.getService(HelloWorldService.class,
"HelloWorldServiceComponent_two/HelloWorldService");
+ assertNotNull(helloWorldService_two);
+
+ assertEquals("Hello Smith",
helloWorldService_two.getGreetings("Smith"));
+
+ }
+
+ public void tearDown() throws Exception {
+ ContributionService contributionService =
domain.getContributionService();
+
+ // Remove the contribution from the in-memory repository
+ contributionService.remove("http://contribution-multiple/helloworld");
+
contributionService.remove("http://contribution-multiple/helloworld_one");
+
contributionService.remove("http://contribution-multiple/helloworld_two");
+
+ // Stop Components from my composite
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
+ domain.getCompositeActivator().stop(deployable);
+ domain.getCompositeActivator().deactivate(deployable);
+ }
+ for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ domain.getCompositeActivator().stop(deployable);
+ domain.getCompositeActivator().deactivate(deployable);
+ }
+ for (Composite deployable : helloContribution.getDeployables()) {
+ domain.getCompositeActivator().stop(deployable);
+ domain.getCompositeActivator().deactivate(deployable);
+ }
+ // domain.stop();
+ domain.close();
+ }
+
+}
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionMultipleTestCaseFIXME.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionTestCase.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionTestCase.java?rev=659008&r1=659007&r2=659008&view=diff
==============================================================================
---
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionTestCase.java
(original)
+++
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/java/test/ContributionTestCase.java
Wed May 21 22:13:23 2008
@@ -37,16 +37,19 @@
public class ContributionTestCase extends TestCase {
private String helloContribution_dir =
"target/test-classes/contribution-export";
- private String helloWorldContribution_one_dir =
"target/test-classes/contribution-import-one";
+ //private String helloWorldContribution_one_dir =
"target/test-classes/contribution-import-one";
+ private String helloWorldContribution_two_dir =
"target/test-classes/contribution-import-two";
private ClassLoader cl;
private EmbeddedSCADomain domain;
private Contribution helloContribution;
- private Contribution helloWorldContribution_one;
+ //private Contribution helloWorldContribution_one;
+ private Contribution helloWorldContribution_two;
protected void setUp() throws Exception {
URL helloContribution_URL = new
java.io.File(helloContribution_dir).toURI().toURL();
- URL helloWorldContribution_one_URL = new
java.io.File(helloWorldContribution_one_dir).toURI().toURL();
+ //URL helloWorldContribution_one_URL = new
java.io.File(helloWorldContribution_one_dir).toURI().toURL();
+ URL helloWorldContribution_two_URL = new
java.io.File(helloWorldContribution_two_dir).toURI().toURL();
// Create a test embedded SCA domain
cl = getClass().getClassLoader();
@@ -60,37 +63,58 @@
helloContribution =
contributionService.contribute("http://contribution-multiple/helloworld",
helloContribution_URL, false);
-
+
+ //helloWorldContribution_one =
+ //
contributionService.contribute("http://contribution-multiple/helloworld_one",
helloWorldContribution_one_URL, false);
+
+ helloWorldContribution_two =
+
contributionService.contribute("http://contribution-multiple/helloworld_two",
helloWorldContribution_two_URL, false);
+
for (Composite deployable : helloContribution.getDeployables()) {
domain.getDomainComposite().getIncludes().add(deployable);
domain.buildComposite(deployable);
}
+
+ //for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ // domain.getDomainComposite().getIncludes().add(deployable);
+ // domain.buildComposite(deployable);
+ //}
+
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
+ domain.getDomainComposite().getIncludes().add(deployable);
+ domain.buildComposite(deployable);
+ }
+
for (Composite deployable : helloContribution.getDeployables()) {
domain.getCompositeActivator().activate(deployable);
domain.getCompositeActivator().start(deployable);
}
- helloWorldContribution_one =
-
contributionService.contribute("http://contribution-multiple/helloworld_one",
helloWorldContribution_one_URL, false);
- for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
- domain.getDomainComposite().getIncludes().add(deployable);
- domain.buildComposite(deployable);
- }
+ //for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ // domain.getCompositeActivator().activate(deployable);
+ // domain.getCompositeActivator().start(deployable);
+ //}
- for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
domain.getCompositeActivator().activate(deployable);
domain.getCompositeActivator().start(deployable);
- }
+ }
}
public void testServiceCall() throws IOException {
- HelloWorldService helloWorldService_one =
- domain.getService(HelloWorldService.class,
"HelloWorldServiceComponent_one/HelloWorldService");
- assertNotNull(helloWorldService_one);
+ //HelloWorldService helloWorldService_one =
+ //domain.getService(HelloWorldService.class,
"HelloWorldServiceComponent_one/HelloWorldService");
+ //assertNotNull(helloWorldService_one);
+
+ //assertEquals("Hello Smith",
helloWorldService_one.getGreetings("Smith"));
- assertEquals("Hello Smith",
helloWorldService_one.getGreetings("Smith"));
+ HelloWorldService helloWorldService_two =
+ domain.getService(HelloWorldService.class,
"HelloWorldServiceComponent_two/HelloWorldService");
+ assertNotNull(helloWorldService_two);
+ assertEquals("Hello Smith",
helloWorldService_two.getGreetings("Smith"));
+
}
public void tearDown() throws Exception {
@@ -98,13 +122,18 @@
// Remove the contribution from the in-memory repository
contributionService.remove("http://contribution-multiple/helloworld");
-
contributionService.remove("http://contribution-multiple/helloworld_one");
+
//contributionService.remove("http://contribution-multiple/helloworld_one");
+
contributionService.remove("http://contribution-multiple/helloworld_two");
// Stop Components from my composite
- for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ for (Composite deployable :
helloWorldContribution_two.getDeployables()) {
domain.getCompositeActivator().stop(deployable);
domain.getCompositeActivator().deactivate(deployable);
- }
+ }
+ //for (Composite deployable :
helloWorldContribution_one.getDeployables()) {
+ // domain.getCompositeActivator().stop(deployable);
+ // domain.getCompositeActivator().deactivate(deployable);
+ //}
for (Composite deployable : helloContribution.getDeployables()) {
domain.getCompositeActivator().stop(deployable);
domain.getCompositeActivator().deactivate(deployable);
Added:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml?rev=659008&view=auto
==============================================================================
---
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
(added)
+++
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
Wed May 21 22:13:23 2008
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<contribution xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://helloworld"
+ xmlns:helloworld="http://helloworld"
+ xmlns:hello="http://hello">
+ <deployable composite="helloworld:helloworld_two"/>
+ <import namespace="http://hello"/>
+</contribution>
\ No newline at end of file
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/META-INF/sca-contribution.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite?rev=659008&view=auto
==============================================================================
---
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
(added)
+++
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
Wed May 21 22:13:23 2008
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ targetNamespace="http://helloworld"
+ xmlns:helloworld="http://helloworld"
+ xmlns:hello="http://hello"
+ name="helloworld_two">
+
+ <component name="SourceHelloServiceComponent_two">
+ <implementation.composite name="hello:hello"/>
+ </component>
+
+ <component name="HelloWorldServiceComponent_two">
+ <implementation.java class="helloworld.HelloWorldImpl" />
+ <reference name="helloServiceRef"
target="SourceHelloServiceComponent_two/HelloService"/>
+ </component>
+
+</composite>
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange:
incubator/tuscany/java/sca/itest/contribution-multiple/src/test/resources/contribution-import-two/helloworld_two.composite
------------------------------------------------------------------------------
svn:mime-type = text/xml