Author: slaws
Date: Wed Feb 25 20:52:45 2009
New Revision: 747917

URL: http://svn.apache.org/viewvc?rev=747917&view=rev
Log:
Improve some assembly component tests to be more specific

Added:
    
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
   (with props)
    
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
   (with props)
Modified:
    
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename.composite
    
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java

Added: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite?rev=747917&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
 (added)
+++ 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
 Wed Feb 25 20:52:45 2009
@@ -0,0 +1,65 @@
+<?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";
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
+       targetNamespace="http://assembly-tests";
+       name="Assemby-component">
+
+    <component name="ClientComponent1">
+        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientAImpl"/>
+        
+        <service name="MyClientA">
+           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientA"/>
          
+        </service>
+        
+        <reference name="b" target="ServiceComponent/MyService">       
+        </reference>
+        
+        <reference name="bService" target="ServiceComponent/MyService">
+        </reference>
+        
+    </component>
+    
+    
+    <component name="ClientComponent2">        
+        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientAImpl"/>
+        
+        <service name="MyClientA">
+           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientA"/>
         
+        </service>
+        
+        <reference name="b" target="ServiceComponent/MyService">
+        </reference>
+        
+        <reference name="b" target="ServiceComponent/MyService"> 
+        </reference>
+        
+    </component>   
+    
+        
+    <component name="ServiceComponent">        
+        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyServiceImpl"/>
+               <service name="MyService">
+           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyService"/>
           
+        </service>
+    </component>
+
+</composite>

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename.composite
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename.composite?rev=747917&r1=747916&r2=747917&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename.composite
 (original)
+++ 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename.composite
 Wed Feb 25 20:52:45 2009
@@ -36,23 +36,7 @@
         <reference name="bService" target="ServiceComponent/MyService">
         </reference>
         
-    </component>
-    
-    
-    <component name="ClientComponent2">        
-        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientAImpl"/>
-        
-        <service name="MyClientA">
-           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientA"/>
         
-        </service>
-        
-        <reference name="b" target="ServiceComponent/MyService">
-        </reference>
-        
-        <reference name="b" target="ServiceComponent/MyService"> 
-        </reference>
-        
-    </component>   
+    </component> 
     
         
     <component name="ServiceComponent">        

Added: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite?rev=747917&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
 (added)
+++ 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
 Wed Feb 25 20:52:45 2009
@@ -0,0 +1,49 @@
+<?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";
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
+       targetNamespace="http://assembly-tests";
+       name="Assemby-component">
+
+    <component name="ClientComponent1">
+        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientAImpl"/>
+        
+        <service name="MyClientA">
+           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyClientA"/>
          
+        </service>
+        
+        <reference name="b" target="ServiceComponent/MyService">       
+        </reference>
+        
+        <reference name="bServiceX" target="ServiceComponent/MyService">
+        </reference>
+        
+    </component> 
+    
+        
+    <component name="ServiceComponent">        
+        <implementation.java 
class="org.apache.tuscany.sca.vtest.assembly.component.reference.MyServiceImpl"/>
+               <service name="MyService">
+           <interface.java 
interface="org.apache.tuscany.sca.vtest.assembly.component.reference.MyService"/>
           
+        </service>
+    </component>
+
+</composite>

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java?rev=747917&r1=747916&r2=747917&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java
 Wed Feb 25 20:52:45 2009
@@ -28,6 +28,7 @@
 import org.apache.tuscany.sca.vtest.utilities.ServiceFinder;
 import org.junit.Ignore;
 import org.junit.Test;
+import org.osoa.sca.ServiceRuntimeException;
 
 /**
  * Test the reference name, wire, wireByImpl, autowire and so on.
@@ -87,15 +88,17 @@
      * The @name attribute of a reference element of a <component/> MUST be 
unique amongst the 
      * reference elements of that <component/>
      */
-    @Test(expected = NullPointerException.class)
+    @Test
     public void testDuplicateComponentReferenceName() {
        //for this case, the reference of "b" in MyClientImpl is null.
-       initDomain("referencename.composite");          
-       MyClientA service = ServiceFinder.getService(MyClientA.class, 
"ClientComponent2/MyClientA");
-       Assert.assertEquals("MyService:::MyService" , 
service.callOtherServices()) ;
+        try {
+               initDomain("referenceduplicatename.composite"); 
+        } catch (ServiceRuntimeException ex){
+            Assert.assertEquals("Duplicate component reference name: Component 
= ClientComponent2 Reference = b", ex.getMessage());
+            return;
+        }
+        Assert.fail();         
         cleanupDomain();
-       
-       
     }
     
     /**
@@ -111,12 +114,17 @@
      * the name of the reference. Has to match a name of a reference defined 
by the implementation.
      * 
      */    
-    @Test(expected = NullPointerException.class)
+    @Test
     public void testComponentReferenceNameValid() {
        
-       initDomain("referencename.composite");          
-       MyClientA service = ServiceFinder.getService(MyClientA.class, 
"ClientComponent1/MyClientA");            
-       Assert.assertEquals("MyService" , service.callInvalidReference()) ;     
+        try {
+            initDomain("referencenamemissmatch.composite");   
+        } catch (ServiceRuntimeException ex){
+            Assert.assertEquals("Reference not found for component reference: 
Component = ClientComponent1 Reference = bServiceX", ex.getMessage());
+            return;
+        }
+               
+       Assert.fail();          
         cleanupDomain();
        
     }


Reply via email to