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/05/23 09:15:24 UTC

svn commit: r408842 - in /incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src: main/java/org/apache/tuscany/container/extension/loader/ test/ test/java/ test/java/org/ test/java/org/apache/ test/java/org/apache/tuscany/ test/java/org/...

Author: jmarino
Date: Tue May 23 00:15:23 2006
New Revision: 408842

URL: http://svn.apache.org/viewvc?rev=408842&view=rev
Log:
wires working in Groovy

Added:
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/InvocationTestCase.java
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/samples/
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/samples/groovy/
Modified:
    incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/extension/loader/AbstractImplementationLoader.java

Modified: incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/extension/loader/AbstractImplementationLoader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/extension/loader/AbstractImplementationLoader.java?rev=408842&r1=408841&r2=408842&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/extension/loader/AbstractImplementationLoader.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/extension/loader/AbstractImplementationLoader.java Tue May 23 00:15:23 2006
@@ -25,8 +25,8 @@
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
 
-import org.apache.tuscany.model.Implementation;
-import org.apache.tuscany.model.ComponentType;
+import org.apache.tuscany.spi.model.Implementation;
+import org.apache.tuscany.spi.model.ComponentType;
 import org.apache.tuscany.spi.loader.StAXElementLoader;
 import org.apache.tuscany.spi.loader.LoaderContext;
 import org.apache.tuscany.spi.annotation.Autowire;

Added: incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/InvocationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/InvocationTestCase.java?rev=408842&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/InvocationTestCase.java (added)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/InvocationTestCase.java Tue May 23 00:15:23 2006
@@ -0,0 +1,64 @@
+package org.apache.tuscany.container.groovy;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import groovy.lang.GroovyObject;
+import org.apache.tuscany.container.groovy.mock.Greeting;
+import org.apache.tuscany.core.context.scope.ModuleScopeContext;
+import org.apache.tuscany.spi.model.Scope;
+import org.apache.tuscany.spi.wire.SourceWire;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
+
+/**
+ * @version $$Rev$$ $$Date$$
+ */
+public class InvocationTestCase extends MockObjectTestCase {
+
+    private String script1 = "import org.apache.tuscany.container.groovy.mock.Greeting;" +
+            "class Foo implements Greeting{" +
+            "   Greeting wire;" +
+            "   public String greet(String name){" +
+            "       return wire.greet(name);  " +
+            "   }" +
+            "}";
+
+    private String script2 = "def greet(name) { return name }";
+
+    public void testBasicClassAndWireInvocation() throws Exception {
+        ModuleScopeContext scope = new ModuleScopeContext(null);
+        scope.start();
+        List<Class<?>> services = new ArrayList<Class<?>>();
+        services.add(Greeting.class);
+        GroovyAtomicContext<Greeting> context = new GroovyAtomicContext<Greeting>("source", script1, services, Scope.MODULE, null);
+        context.setScopeContext(scope);
+        Mock mock = mock(SourceWire.class);
+        mock.expects(atLeastOnce()).method("getTargetService").will(
+                returnValue(new Greeting() {
+                    public String greet(String name) {
+                        return name;
+                    }
+                }));
+        mock.stubs().method("getReferenceName").will(returnValue("wire"));
+        SourceWire<Greeting> wire = (SourceWire<Greeting>) mock.proxy();
+        context.addSourceWire(wire);
+        Greeting greeting = context.getService();
+        assertEquals("foo", greeting.greet("foo"));
+        scope.stop();
+    }
+
+
+    public void testBasicScriptInvocation() throws Exception {
+        ModuleScopeContext scope = new ModuleScopeContext(null);
+        scope.start();
+        List<Class<?>> services = new ArrayList<Class<?>>();
+        services.add(Greeting.class);
+        GroovyAtomicContext<GroovyObject> context = new GroovyAtomicContext<GroovyObject>("source", script2, services, Scope.MODULE, null);
+        context.setScopeContext(scope);
+        GroovyObject object = context.getService();
+        assertEquals("foo", object.invokeMethod("greet", "foo"));
+        scope.stop();
+    }
+
+}

Added: incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java?rev=408842&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java (added)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java Tue May 23 00:15:23 2006
@@ -0,0 +1,6 @@
+package org.apache.tuscany.container.groovy.mock;
+
+public interface Greeting {
+
+    String greet(String name);
+}



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