You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2006/08/14 20:49:13 UTC

svn commit: r431408 - in /incubator/tuscany/java/sca/containers/container.spring: ./ src/main/java/org/apache/tuscany/container/spring/ src/test/java/org/apache/tuscany/container/spring/

Author: jmarino
Date: Mon Aug 14 11:49:12 2006
New Revision: 431408

URL: http://svn.apache.org/viewvc?rev=431408&view=rev
Log:
move unit tests to EasyMock; sourcecheck cleanup

Modified:
    incubator/tuscany/java/sca/containers/container.spring/pom.xml
    incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringCompositeBuilder.java
    incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementation.java
    incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementationLoader.java
    incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/ReferenceInvocationTestCase.java
    incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringCompositeBuilderTestCase.java
    incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringInvocationTestCase.java

Modified: incubator/tuscany/java/sca/containers/container.spring/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/pom.xml?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/pom.xml (original)
+++ incubator/tuscany/java/sca/containers/container.spring/pom.xml Mon Aug 14 11:49:12 2006
@@ -58,6 +58,11 @@
             <version>${sca.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.easymock</groupId>
+            <artifactId>easymock</artifactId>
+        </dependency>
+
     </dependencies>
 
 </project>

Modified: incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringCompositeBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringCompositeBuilder.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringCompositeBuilder.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringCompositeBuilder.java Mon Aug 14 11:49:12 2006
@@ -18,6 +18,9 @@
  */
 package org.apache.tuscany.container.spring;
 
+import java.net.URL;
+
+import org.apache.tuscany.spi.QualifiedName;
 import org.apache.tuscany.spi.builder.BuilderConfigException;
 import org.apache.tuscany.spi.component.Component;
 import org.apache.tuscany.spi.component.CompositeComponent;
@@ -32,19 +35,14 @@
 import org.apache.tuscany.spi.model.Property;
 import org.apache.tuscany.spi.model.ReferenceDefinition;
 import org.apache.tuscany.spi.model.ReferenceTarget;
-import org.apache.tuscany.spi.wire.InboundWire;
 import org.apache.tuscany.spi.wire.InboundInvocationChain;
-import org.apache.tuscany.spi.QualifiedName;
+import org.apache.tuscany.spi.wire.InboundWire;
 
+import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
 import org.springframework.context.ConfigurableApplicationContext;
 import org.springframework.context.support.GenericApplicationContext;
-import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
-import org.springframework.beans.factory.support.PropertiesBeanDefinitionReader;
-import org.springframework.core.io.ClassPathResource;
 import org.springframework.core.io.UrlResource;
 
-import java.net.URL;
-
 /**
  * Creates a {@link SpringCompositeComponent} from an assembly model
  *
@@ -58,7 +56,8 @@
                            DeploymentContext deploymentContext) throws BuilderConfigException {
         String name = componentDefinition.getName();
         SpringImplementation implementation = componentDefinition.getImplementation();
-        ConfigurableApplicationContext applicationContext = createApplicationContext(implementation.getApplicationXml());
+        ConfigurableApplicationContext applicationContext =
+            createApplicationContext(implementation.getApplicationXml());
 
         SpringCompositeComponent component =
             new SpringCompositeComponent(name, applicationContext, parent, null);
@@ -72,7 +71,7 @@
         for (BoundServiceDefinition<? extends Binding> serviceDefinition : componentType.getServices().values()) {
             // call back into builder registry to handle building of services
             Service<?> service = (Service) builderRegistry.build(parent, serviceDefinition, deploymentContext);
-           // wire serviceDefinition to bean invokers
+            // wire serviceDefinition to bean invokers
             InboundWire<?> wire = service.getInboundWire();
             QualifiedName targetName = new QualifiedName(serviceDefinition.getTarget().getPath());
             for (InboundInvocationChain chain : wire.getInvocationChains().values()) {

Modified: incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementation.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementation.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementation.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementation.java Mon Aug 14 11:49:12 2006
@@ -18,7 +18,7 @@
  */
 package org.apache.tuscany.container.spring;
 
-import org.springframework.context.ConfigurableApplicationContext;
+import java.net.URL;
 
 import org.apache.tuscany.spi.model.Binding;
 import org.apache.tuscany.spi.model.BoundReferenceDefinition;
@@ -27,16 +27,14 @@
 import org.apache.tuscany.spi.model.Implementation;
 import org.apache.tuscany.spi.model.Property;
 
-import java.net.URL;
-
 /**
  * @version $$Rev$$ $$Date$$
  */
 public class SpringImplementation extends Implementation<
-        CompositeComponentType<
-                BoundServiceDefinition<? extends Binding>,
-                BoundReferenceDefinition<? extends Binding>,
-                ? extends Property>> {
+    CompositeComponentType<
+        BoundServiceDefinition<? extends Binding>,
+        BoundReferenceDefinition<? extends Binding>,
+        ? extends Property>> {
 
     private String location;
     private URL applicationXml;
@@ -45,9 +43,9 @@
     }
 
     public SpringImplementation(CompositeComponentType<
-            BoundServiceDefinition<? extends Binding>,
-            BoundReferenceDefinition<? extends Binding>,
-            ? extends Property> componentType) {
+        BoundServiceDefinition<? extends Binding>,
+        BoundReferenceDefinition<? extends Binding>,
+        ? extends Property> componentType) {
         super(componentType);
     }
 

Modified: incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementationLoader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementationLoader.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementationLoader.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/SpringImplementationLoader.java Mon Aug 14 11:49:12 2006
@@ -35,37 +35,40 @@
  *  limitations under the License.
  */
 
-import org.apache.tuscany.spi.extension.LoaderExtension;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.net.URL;
+import java.util.jar.Attributes;
+import java.util.jar.JarEntry;
+import java.util.jar.JarFile;
+import java.util.jar.Manifest;
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.osoa.sca.annotations.Constructor;
+
 import org.apache.tuscany.spi.annotation.Autowire;
-import org.apache.tuscany.spi.loader.LoaderRegistry;
-import org.apache.tuscany.spi.loader.LoaderException;
-import org.apache.tuscany.spi.loader.MissingResourceException;
-import org.apache.tuscany.spi.loader.LoaderUtil;
 import org.apache.tuscany.spi.component.CompositeComponent;
 import org.apache.tuscany.spi.deployer.DeploymentContext;
+import org.apache.tuscany.spi.extension.LoaderExtension;
+import org.apache.tuscany.spi.loader.LoaderException;
+import org.apache.tuscany.spi.loader.LoaderRegistry;
+import org.apache.tuscany.spi.loader.LoaderUtil;
+import org.apache.tuscany.spi.loader.MissingResourceException;
 import org.apache.tuscany.spi.services.info.RuntimeInfo;
-import org.osoa.sca.annotations.Constructor;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamException;
-import java.net.URL;
-import java.io.*;
-import java.util.jar.JarFile;
-import java.util.jar.Manifest;
-import java.util.jar.Attributes;
-import java.util.jar.JarEntry;
-import java.util.Map;
 
 /**
  * Loader for handling Spring <spring:implementation.spring> elements.
  */
 public class SpringImplementationLoader extends LoaderExtension<SpringImplementation> {
-    private static final QName IMPLEMENTATION_SPRING = new QName("http://tuscany.apache.org/xmlns/spring/1.0", "implementation.spring");
+    private static final QName IMPLEMENTATION_SPRING = new QName("http://tuscany.apache.org/xmlns/spring/1.0",
+        "implementation.spring");
 
     private final RuntimeInfo runtimeInfo;
 
-    @Constructor({"registry"})
+    @Constructor
     public SpringImplementationLoader(@Autowire LoaderRegistry registry, @Autowire RuntimeInfo runtimeInfo) {
         super(registry);
         this.runtimeInfo = runtimeInfo;
@@ -75,8 +78,9 @@
         return IMPLEMENTATION_SPRING;
     }
 
-    public SpringImplementation load(CompositeComponent parent, XMLStreamReader reader, DeploymentContext deploymentContext)
-            throws XMLStreamException, LoaderException {
+    public SpringImplementation load(CompositeComponent parent, XMLStreamReader reader,
+                                     DeploymentContext deploymentContext)
+        throws XMLStreamException, LoaderException {
 
         String locationAttr = reader.getAttributeValue(null, "location");
         if (locationAttr == null) {
@@ -95,11 +99,10 @@
 
     protected URL getApplicationContextUrl(String locationAttr) throws LoaderException {
         assert runtimeInfo != null;
-
         File manifestFile = null;
-        File appXmlFile = null;
-
+        File appXmlFile;
         File locationFile = new File(locationAttr);
+
         if (!locationFile.isAbsolute()) {
             locationFile = new File(runtimeInfo.getApplicationRootDirectory(), locationAttr);
         }
@@ -133,7 +136,7 @@
         } else {
             try {
                 JarFile jf = new JarFile(locationFile);
-                JarEntry je = null;
+                JarEntry je;
                 Manifest mf = jf.getManifest();
                 if (mf != null) {
                     Attributes mainAttrs = mf.getMainAttributes();

Modified: incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/ReferenceInvocationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/ReferenceInvocationTestCase.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/ReferenceInvocationTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/ReferenceInvocationTestCase.java Mon Aug 14 11:49:12 2006
@@ -18,35 +18,38 @@
  */
 package org.apache.tuscany.container.spring;
 
+import org.apache.tuscany.spi.component.Reference;
+
+import junit.framework.TestCase;
 import org.apache.tuscany.container.spring.mock.TestBean;
 import org.apache.tuscany.container.spring.mock.TestBeanImpl;
-import org.apache.tuscany.spi.component.Reference;
-import org.jmock.Mock;
-import org.jmock.MockObjectTestCase;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
 import org.springframework.beans.PropertyValue;
 import org.springframework.beans.factory.config.BeanDefinition;
 import org.springframework.beans.factory.config.RuntimeBeanReference;
 import org.springframework.beans.factory.support.RootBeanDefinition;
-import org.springframework.context.support.StaticApplicationContext;
 import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.support.StaticApplicationContext;
 
 /**
  * Verifies wiring from a Spring bean to an SCA composite reference
  *
  * @version $$Rev$$ $$Date$$
  */
-public class ReferenceInvocationTestCase extends MockObjectTestCase {
+public class ReferenceInvocationTestCase extends TestCase {
 
     public void testInvocation() throws Exception {
         ConfigurableApplicationContext ctx = createSpringContext();
         SpringCompositeComponent parent = new SpringCompositeComponent("spring", ctx, null, null);
         parent.start();
         TestBean referenceTarget = new TestBeanImpl();
-        Mock mock = mock(Reference.class);
-        mock.stubs().method("getName").will(returnValue("bar"));
-        mock.stubs().method("getInterface").will(returnValue(TestBean.class));
-        mock.expects(atLeastOnce()).method("getServiceInstance").will(returnValue(referenceTarget));
-        Reference reference = (Reference) mock.proxy();
+        Reference reference = createMock(Reference.class);
+        expect(reference.getName()).andReturn("bar").anyTimes();
+        expect(reference.getInterface()).andReturn(TestBean.class);
+        expect(reference.getServiceInstance()).andStubReturn(referenceTarget);
+        replay(reference);
         parent.register(reference);
         ctx.getBean("foo");
     }

Modified: incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringCompositeBuilderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringCompositeBuilderTestCase.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringCompositeBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringCompositeBuilderTestCase.java Mon Aug 14 11:49:12 2006
@@ -18,18 +18,18 @@
  */
 package org.apache.tuscany.container.spring;
 
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.net.MalformedURLException;
 import java.io.File;
-import java.io.IOException;
 import java.io.FileWriter;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
 
 import org.apache.tuscany.spi.builder.BuilderRegistry;
 import org.apache.tuscany.spi.builder.Connector;
 import org.apache.tuscany.spi.component.CompositeComponent;
 import org.apache.tuscany.spi.component.Service;
+import org.apache.tuscany.spi.deployer.DeploymentContext;
 import org.apache.tuscany.spi.extension.ServiceExtension;
 import org.apache.tuscany.spi.model.BoundServiceDefinition;
 import org.apache.tuscany.spi.model.ComponentDefinition;
@@ -39,38 +39,38 @@
 import org.apache.tuscany.spi.wire.OutboundWire;
 import org.apache.tuscany.spi.wire.WireService;
 
+import junit.framework.TestCase;
 import org.apache.tuscany.container.spring.mock.TestBean;
-import org.apache.tuscany.container.spring.mock.TestBeanImpl;
 import org.apache.tuscany.container.spring.mock.VMBinding;
 import org.apache.tuscany.test.ArtifactFactory;
-import org.jmock.Mock;
-import org.jmock.MockObjectTestCase;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
 import org.jmock.core.Constraint;
 import org.jmock.core.Formatting;
-import org.springframework.beans.factory.config.BeanDefinition;
-import org.springframework.beans.factory.support.RootBeanDefinition;
-import org.springframework.context.ConfigurableApplicationContext;
-import org.springframework.context.support.StaticApplicationContext;
 
 /**
  * @version $$Rev$$ $$Date$$
  */
-public class SpringCompositeBuilderTestCase extends MockObjectTestCase {
+public class SpringCompositeBuilderTestCase extends TestCase {
     private final String appXml =
-        "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
-        "<beans xmlns=\"http://www.springframework.org/schema/beans\"\n" +
-        "       xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n" +
-        "       xsi:schemaLocation=\"\n" +
-        "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd \n" +
-//        "http://www.springframework.org/schema/sca http://www.springframework.org/schema/sca/SpringSCA.xsd" +
-        "\">\n" +
-        "\n" +
-//        "<sca:service name=\"fooService\" type=\"org.apache.tuscany.container.spring.mock.TestBean\" target=\"fooBean\"/>" +
-        "\n" +
-        "<bean id=\"fooBean\" class=\"org.apache.tuscany.container.spring.mock.TestBeanImpl\">\n" +
-        "</bean>\n" +
-        "\n" +
-        "</beans>\n";
+        "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+            + "<beans xmlns=\"http://www.springframework.org/schema/beans\"\n"
+            + "       xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+            + "       xsi:schemaLocation=\"\n"
+            + "http://www.springframework.org/schema/beans "
+            + "http://www.springframework.org/schema/beans/spring-beans.xsd \n"
+// "http://www.springframework.org/schema/sca http://www.springframework.org/schema/sca/SpringSCA.xsd" +
+            + "\">\n"
+            + "\n"
+// "<sca:service name=\"fooService\" type=\"org.apache.tuscany.container.spring.mock.TestBean\" target=\"fooBean\"/>" +
+            + "\n"
+            + "<bean id=\"fooBean\" class=\"org.apache.tuscany.container.spring.mock.TestBeanImpl\">\n"
+            + "</bean>\n"
+            + "\n"
+            + "</beans>\n";
 
     public void testBuildImplicit() throws Exception {
 
@@ -97,18 +97,20 @@
         connector.connect(inboundWire, outboundWire, true);
 
         // Configure the mock builder registry
-        Mock mock = mock(BuilderRegistry.class);
-        mock.expects(atLeastOnce()).method("build").with(ANYTHING, serviceIsNamed("fooService"), ANYTHING)
-            .will(returnValue(serviceContext));
-
+        BuilderRegistry registry = createMock(BuilderRegistry.class);
+        expect(registry.build(isA(CompositeComponent.class),
+            isA(BoundServiceDefinition.class),
+            isA(DeploymentContext.class))).andStubReturn(serviceContext);
+        replay(registry);
         // Test the SpringCompositeBuilder
         SpringCompositeBuilder builder = new SpringCompositeBuilder();
         builder.setWireService(wireService);
-        builder.setBuilderRegistry((BuilderRegistry) mock.proxy());
-        CompositeComponent component = (CompositeComponent) builder.build(null, componentDefinition, null);
+        builder.setBuilderRegistry(registry);
+        CompositeComponent component = (CompositeComponent) builder.build(createNiceMock(CompositeComponent.class),
+            componentDefinition,
+            createNiceMock(DeploymentContext.class));
         Service service = component.getService("fooService");
         TestBean bean = (TestBean) service.getServiceInstance();
-
         assertEquals("call foo", bean.echo("call foo"));
     }
 

Modified: incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringInvocationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringInvocationTestCase.java?rev=431408&r1=431407&r2=431408&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringInvocationTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/SpringInvocationTestCase.java Mon Aug 14 11:49:12 2006
@@ -18,10 +18,12 @@
  */
 package org.apache.tuscany.container.spring;
 
+import junit.framework.TestCase;
 import org.apache.tuscany.container.spring.mock.TestBean;
 import org.apache.tuscany.container.spring.mock.TestBeanImpl;
-import org.jmock.Mock;
-import org.jmock.MockObjectTestCase;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
 import org.springframework.context.ConfigurableApplicationContext;
 
 /**
@@ -29,12 +31,12 @@
  *
  * @version $$Rev$$ $$Date$$
  */
-public class SpringInvocationTestCase extends MockObjectTestCase {
+public class SpringInvocationTestCase extends TestCase {
 
     public void testSpringInvocation() throws Exception {
-        Mock mock = mock(ConfigurableApplicationContext.class);
-        mock.expects(atLeastOnce()).method("getBean").with(eq("foo")).will(returnValue(new TestBeanImpl()));
-        ConfigurableApplicationContext ctx = (ConfigurableApplicationContext) mock.proxy();
+        ConfigurableApplicationContext ctx = createMock(ConfigurableApplicationContext.class);
+        expect(ctx.getBean("foo")).andStubReturn(new TestBeanImpl());
+        replay(ctx);
         SpringInvoker invoker = new SpringInvoker("foo", TestBean.class.getMethod("echo", String.class), ctx);
         assertEquals("call foo", invoker.invokeTarget(new String[]{"call foo"}));
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org