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/06/01 09:37:10 UTC
svn commit: r410780 - in
/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy:
WireTestCase.java mock/Greeting.java
Author: jmarino
Date: Thu Jun 1 00:37:10 2006
New Revision: 410780
URL: http://svn.apache.org/viewvc?rev=410780&view=rev
Log:
fix groovy component to pass tests with wire changes
Modified:
incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java
incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java
Modified: incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java?rev=410780&r1=410779&r2=410780&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java Thu Jun 1 00:37:10 2006
@@ -6,9 +6,13 @@
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.InboundInvocationChain;
+import org.apache.tuscany.spi.wire.InboundWire;
+import org.apache.tuscany.spi.wire.Message;
+import org.apache.tuscany.spi.wire.MessageImpl;
+import org.apache.tuscany.spi.wire.OutboundInvocationChain;
import org.apache.tuscany.spi.wire.OutboundWire;
import org.apache.tuscany.spi.wire.TargetInvoker;
-import org.apache.tuscany.spi.wire.InboundWire;
import org.apache.tuscany.test.ArtifactFactory;
import org.jmock.Mock;
import org.jmock.MockObjectTestCase;
@@ -23,9 +27,14 @@
private static final String SCRIPT = "import org.apache.tuscany.container.groovy.mock.Greeting;" +
"class Foo implements Greeting{" +
" Greeting wire;" +
- " public String greet(String name){" +
+ " " +
+ " void setWire(Greeting ref){" +
+ " wire = ref;" +
+ " };" +
+ " " +
+ " String greet(String name){" +
" return wire.greet(name); " +
- " }" +
+ " };" +
"}";
private static final String SCRIPT2 = "import org.apache.tuscany.container.groovy.mock.Greeting;" +
@@ -41,20 +50,31 @@
public void testReferenceWireInvocation() 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", SCRIPT, services,
- Scope.MODULE, null, null, scope, ArtifactFactory.createWireService());
+ GroovyAtomicContext<Greeting> context = new GroovyAtomicContext<Greeting>("source", SCRIPT,
+ services, Scope.MODULE, null, null, scope, ArtifactFactory.createWireService());
+ OutboundWire<?> wire = ArtifactFactory.createOutboundWire("wire", Greeting.class);
+ ArtifactFactory.terminateWire(wire);
+ Mock mock = mock(TargetInvoker.class);
+ mock.expects(atLeastOnce()).method("isCacheable").will(returnValue(false));
+ mock.expects(atLeastOnce()).method("invoke").will(new Stub() {
+ public Object invoke(Invocation invocation) throws Throwable {
+ Message msg = new MessageImpl();
+ msg.setBody("foo");
+ return msg;
+ }
+
+ public StringBuffer describeTo(StringBuffer stringBuffer) {
+ return null;
+ }
+ });
+ TargetInvoker invoker = (TargetInvoker) mock.proxy();
+ for (OutboundInvocationChain chain : wire.getInvocationChains().values()) {
+ chain.setTargetInvoker(invoker);
+ }
scope.register(context);
- Mock mock = mock(OutboundWire.class);
- mock.expects(atLeastOnce()).method("getTargetService").will(
- returnValue(new Greeting() {
- public String greet(String name) {
- return name;
- }
- }));
- mock.expects(atLeastOnce()).method("getReferenceName").will(returnValue("wire"));
- OutboundWire<Greeting> wire = (OutboundWire<Greeting>) mock.proxy();
context.addOutboundWire(wire);
Greeting greeting = context.getService();
assertEquals("foo", greeting.greet("foo"));
@@ -71,7 +91,7 @@
List<Class<?>> services = new ArrayList<Class<?>>();
services.add(Greeting.class);
GroovyAtomicContext<Greeting> context = new GroovyAtomicContext<Greeting>("source", SCRIPT2, services,
- Scope.MODULE, null, null, scope,ArtifactFactory.createWireService());
+ Scope.MODULE, null, null, scope, ArtifactFactory.createWireService());
scope.register(context);
TargetInvoker invoker = context.createTargetInvoker("greeting", Greeting.class.getMethod("greet", String.class));
assertEquals("foo", invoker.invokeTarget(new String[]{"foo"}));
@@ -87,23 +107,15 @@
scope.start();
List<Class<?>> services = new ArrayList<Class<?>>();
services.add(Greeting.class);
- final GroovyAtomicContext<Greeting> context = new GroovyAtomicContext<Greeting>("source", SCRIPT2,
- services, Scope.MODULE, null, null, scope,ArtifactFactory.createWireService());
+ GroovyAtomicContext<Greeting> context = new GroovyAtomicContext<Greeting>("source", SCRIPT2,
+ services, Scope.MODULE, null, null, scope, ArtifactFactory.createWireService());
scope.register(context);
- Mock mock = mock(InboundWire.class);
- mock.stubs().method("getServiceName").will(returnValue("Greeting"));
- mock.expects(atLeastOnce()).method("getTargetService").will(
- new Stub() {
- public Object invoke(Invocation invocation) throws Throwable {
- return context.getTargetInstance();
- }
-
- public StringBuffer describeTo(StringBuffer buff) {
- return buff.append("returns the target instance");
- }
- });
- InboundWire<Greeting> wire = (InboundWire<Greeting>) mock.proxy();
+ InboundWire<?> wire = ArtifactFactory.createInboundWire("Greeting", Greeting.class);
+ ArtifactFactory.terminateWire(wire);
+ for (InboundInvocationChain chain : wire.getInvocationChains().values()) {
+ chain.setTargetInvoker(context.createTargetInvoker("Greeting", chain.getMethod()));
+ }
context.addInboundWire(wire);
Greeting greeting = (Greeting) context.getService("Greeting");
assertEquals("foo", greeting.greet("foo"));
Modified: 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=410780&r1=410779&r2=410780&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/mock/Greeting.java Thu Jun 1 00:37:10 2006
@@ -2,5 +2,6 @@
public interface Greeting {
+ String setWire(Greeting ref);
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