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 06:09:56 UTC
svn commit: r408828 - in /incubator/tuscany/sandbox/jboynes/sca:
containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/
core2/src/main/java/org/apache/tuscany/core/context/scope/
core2/src/test/java/org/apache/tuscany/core/syste...
Author: jmarino
Date: Mon May 22 21:09:55 2006
New Revision: 408828
URL: http://svn.apache.org/viewvc?rev=408828&view=rev
Log:
conversion of testcases to jmock; groovy refactor
Modified:
incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicContext.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/context/scope/ModuleScopeContext.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/CompositePropagationTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/DuplicateRegistrationTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemAtomicContextTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeContextResolutionTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeLifecycleTestCase.java
Modified: incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicContext.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicContext.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicContext.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicContext.java Mon May 22 21:09:55 2006
@@ -29,6 +29,7 @@
import org.apache.tuscany.spi.context.TargetException;
import org.apache.tuscany.spi.extension.AtomicContextExtension;
import org.apache.tuscany.spi.wire.TargetInvoker;
+import org.apache.tuscany.spi.wire.SourceWire;
import org.codehaus.groovy.control.CompilationFailedException;
/**
@@ -89,14 +90,13 @@
}
public void init(Object instance) throws TargetException {
- //GroovyObject object = (GroovyObject) instance;
- //for (SourceWire wire : sourceWires) {
- // wire from the groovy script to targets
- // object.setProperty(wire.getReferenceName(), wire.getTargetService());
- //}
+ GroovyObject object = (GroovyObject) instance;
+ for (SourceWire wire : sourceWires) {
+ //wire from the groovy script to targets
+ object.setProperty(wire.getReferenceName(), wire.getTargetService());
+ }
}
public void destroy(Object instance) throws TargetException {
-
}
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/context/scope/ModuleScopeContext.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/context/scope/ModuleScopeContext.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/context/scope/ModuleScopeContext.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/context/scope/ModuleScopeContext.java Mon May 22 21:09:55 2006
@@ -52,7 +52,7 @@
} else if (event instanceof ModuleStop) {
shutdownContexts();
}
- }
+ }
public synchronized void start() {
if (lifecycleState != UNINITIALIZED && lifecycleState != STOPPED) {
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java Mon May 22 21:09:55 2006
@@ -3,44 +3,36 @@
import java.util.ArrayList;
import java.util.List;
-import junit.framework.TestCase;
-import org.apache.tuscany.core.context.WorkContextImpl;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.scope.ModuleScopeContext;
-import org.apache.tuscany.core.mock.factories.MockContextFactory;
-import org.apache.tuscany.core.mock.context.MockReferenceContext;
-import org.apache.tuscany.core.mock.context.MockTargetWire;
-import org.apache.tuscany.core.system.wire.SystemSourceWire;
-import org.apache.tuscany.core.system.wire.SystemTargetWire;
-import org.apache.tuscany.spi.QualifiedName;
-import org.apache.tuscany.spi.context.WorkContext;
-import org.apache.tuscany.spi.wire.SourceWire;
-import org.apache.tuscany.spi.wire.TargetWire;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* Performs basic autowiring tests to composite artifacts
+ *
* @version $$Rev$$ $$Date$$
*/
-public class AutowireTestCase extends TestCase {
+public class AutowireTestCase extends MockObjectTestCase {
/**
* Tests autowiring to an atomic context
+ *
* @throws Exception
*/
public void testAtomicAutowire() throws Exception {
- WorkContext workContext = new WorkContextImpl();
- ModuleScopeContext scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
SystemCompositeContext<?> parent = new SystemCompositeContextImpl("parent", null, null);
parent.start();
+
List<Class<?>> interfaces = new ArrayList<Class<?>>();
interfaces.add(Source.class);
interfaces.add(Source2.class);
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", interfaces, SourceImpl.class);
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
+ Source originalSource = new SourceImpl();
+ Mock mock = mock(SystemAtomicContext.class);
+ mock.stubs().method("getName").will(returnValue("source"));
+ mock.stubs().method("getService").will(returnValue(originalSource));
+ mock.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context = (SystemAtomicContext) mock.proxy();
parent.registerContext(context);
- scopeContext.publish(new ModuleStart(this, parent));
+
Source source = parent.resolveInstance(Source.class);
assertNotNull(source);
Source2 source2 = parent.resolveInstance(Source2.class);
@@ -52,28 +44,31 @@
* Tests autowiring to a service context which is wired to an atomic context.
*/
public void testServiceAutowire() throws Exception {
- WorkContext workContext = new WorkContextImpl();
- ModuleScopeContext scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
SystemCompositeContext<?> parent = new SystemCompositeContextImpl("parent", null, null);
parent.start();
+
List<Class<?>> interfaces = new ArrayList<Class<?>>();
interfaces.add(Source.class);
interfaces.add(Source2.class);
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", interfaces, SourceImpl.class);
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
-
- TargetWire<Source> targetWire = new SystemTargetWire<Source>(Source.class, context);
- SourceWire<Source> wire = new SystemSourceWire<Source>("sourceService", new QualifiedName("source"), Source.class);
- wire.setTargetWire(targetWire);
- SystemServiceContext<Source> serviceContext = new SystemServiceContextImpl<Source>("sourceService", wire, parent);
+ Source serviceSource = new SourceImpl();
+ Mock mock = mock(SystemServiceContext.class);
+ mock.stubs().method("getName").will(returnValue("service"));
+ mock.stubs().method("getService").will(returnValue(serviceSource));
+ mock.stubs().method("getInterface").will(returnValue(Source.class));
+ SystemServiceContext serviceContext = (SystemServiceContext) mock.proxy();
parent.registerContext(serviceContext);
+
+ Source atomicSource = new SourceImpl();
+ Mock mock2 = mock(SystemAtomicContext.class);
+ mock2.stubs().method("getName").will(returnValue("source"));
+ mock2.stubs().method("getService").will(returnValue(atomicSource));
+ mock2.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context = (SystemAtomicContext) mock2.proxy();
parent.registerContext(context);
- scopeContext.publish(new ModuleStart(this, parent));
+
Source source = parent.resolveExternalInstance(Source.class);
- assertNotNull(source);
+ assertSame(serviceSource, source);
Source2 source2 = parent.resolveExternalInstance(Source2.class);
assertNull(source2);
}
@@ -82,17 +77,17 @@
* Tests autowiring to a reference
*/
public void testReferenceAutowire() throws Exception {
- WorkContext workContext = new WorkContextImpl();
- ModuleScopeContext scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
SystemCompositeContext<?> parent = new SystemCompositeContextImpl("parent", null, null);
parent.start();
- MockReferenceContext<Source> referenceContext = new MockReferenceContext<Source>("sourceReference", parent, Source.class);
- // create a mock wire for the reference which just holds a pre-instantiated target
- TargetWire<Source> wire = new MockTargetWire<Source>(Source.class, new SourceImpl());
- referenceContext.setTargetWire(wire);
+
+ Source refSource = new SourceImpl();
+ Mock mock = mock(SystemReferenceContext.class);
+ mock.stubs().method("getName").will(returnValue("service"));
+ mock.stubs().method("getService").will(returnValue(refSource));
+ mock.stubs().method("getInterface").will(returnValue(Source.class));
+ SystemReferenceContext referenceContext = (SystemReferenceContext) mock.proxy();
parent.registerContext(referenceContext);
- scopeContext.publish(new ModuleStart(this, parent));
+
Source source = parent.resolveInstance(Source.class);
assertNotNull(source);
assertNull(parent.resolveExternalInstance(Source.class));
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/CompositePropagationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/CompositePropagationTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/CompositePropagationTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/CompositePropagationTestCase.java Mon May 22 21:09:55 2006
@@ -3,7 +3,6 @@
import java.util.ArrayList;
import java.util.List;
-import junit.framework.TestCase;
import org.apache.tuscany.core.context.WorkContextImpl;
import org.apache.tuscany.core.context.event.ModuleStart;
import org.apache.tuscany.core.context.event.ModuleStop;
@@ -12,88 +11,39 @@
import org.apache.tuscany.core.injection.MethodEventInvoker;
import org.apache.tuscany.core.mock.component.ModuleScopeInitDestroyComponent;
import org.apache.tuscany.core.mock.component.Source;
-import org.apache.tuscany.core.mock.component.SourceImpl;
import org.apache.tuscany.core.mock.factories.MockContextFactory;
import org.apache.tuscany.spi.context.AtomicContext;
-import org.apache.tuscany.spi.context.CompositeContext;
import org.apache.tuscany.spi.context.WorkContext;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* Tests registering arbirarily deep child composite contexts
*
* @version $Rev$ $Date$
*/
-public class CompositePropagationTestCase extends TestCase {
+public class CompositePropagationTestCase extends MockObjectTestCase {
- private EventInvoker<Object> initInvoker;
- private EventInvoker<Object> destroyInvoker;
private SystemCompositeContext parent;
private SystemCompositeContext child1;
private SystemCompositeContext child2;
- private ModuleScopeContext scopeContext;
public void testLifecyclePropagation() throws NoSuchMethodException {
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", SourceImpl.class);
-
parent.start();
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
+ List<Class<?>> interfaces = new ArrayList<Class<?>>();
+ interfaces.add(Source.class);
+ Mock mock = mock(SystemAtomicContext.class);
+ mock.stubs().method("getName").will(returnValue("source"));
+ mock.expects(once()).method("stop");
+ mock.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context = (SystemAtomicContext) mock.proxy();
child2.registerContext(context);
- scopeContext.publish(new ModuleStart(this, parent));
-
- AtomicContext ctx = (AtomicContext) child2.getContext("source");
- Source source = (Source) ctx.getService();
- assertNotNull(source);
-
- CompositeContext composite1 = (CompositeContext) parent.getContext("child1");
- CompositeContext composite2 = (CompositeContext) composite1.getContext("child2");
- AtomicContext ctx2 = (AtomicContext) composite2.getContext("source");
- Source source2 = (Source) ctx2.getService();
- assertSame(source, source2);
-
- scopeContext.onEvent(new ModuleStop(this, parent));
parent.stop();
- scopeContext.stop();
-
- //restart
- scopeContext.start();
- parent.start();
-
- AtomicContext ctx3 = (AtomicContext) child2.getContext("source");
- Source source3 = (Source) ctx3.getService();
- assertNotSame(source, source3);
}
- public void testEventPropagation() throws NoSuchMethodException {
- List<Class<?>> interfaces = new ArrayList<Class<?>>();
- interfaces.add(ModuleScopeInitDestroyComponent.class);
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", interfaces,
- ModuleScopeInitDestroyComponent.class, false, initInvoker, destroyInvoker, null, null);
-
- parent.start();
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
- child2.registerContext(context);
- scopeContext.publish(new ModuleStart(this, parent));
-
- AtomicContext ctx = (AtomicContext) child2.getContext("source");
- ModuleScopeInitDestroyComponent source = (ModuleScopeInitDestroyComponent) ctx.getService();
- assertNotNull(source);
- assertTrue(source.isInitialized());
-
- scopeContext.onEvent(new ModuleStop(this, parent));
- assertTrue(source.isDestroyed());
- }
protected void setUp() throws Exception {
super.setUp();
- initInvoker = new MethodEventInvoker<Object>(ModuleScopeInitDestroyComponent.class.getMethod("init"));
- destroyInvoker = new MethodEventInvoker<Object>(ModuleScopeInitDestroyComponent.class.getMethod("destroy"));
-
- WorkContext workContext = new WorkContextImpl();
- scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
-
parent = new SystemCompositeContextImpl("parent", null, null);
child1 = new SystemCompositeContextImpl("child1", parent, null);
child2 = new SystemCompositeContextImpl("child2", child1, null);
@@ -103,7 +53,6 @@
protected void tearDown() throws Exception {
parent.stop();
- scopeContext.stop();
super.tearDown();
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/DuplicateRegistrationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/DuplicateRegistrationTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/DuplicateRegistrationTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/DuplicateRegistrationTestCase.java Mon May 22 21:09:55 2006
@@ -1,31 +1,38 @@
package org.apache.tuscany.core.system.context;
-import junit.framework.TestCase;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.tuscany.core.context.DuplicateNameException;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.mock.factories.MockContextFactory;
+import org.apache.tuscany.core.mock.component.Source;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* @version $Rev$ $Date$
*/
-public class DuplicateRegistrationTestCase extends TestCase {
+public class DuplicateRegistrationTestCase extends MockObjectTestCase {
public void testDuplicateRegistration() throws Exception {
- SystemCompositeContext systemContext = new SystemCompositeContextImpl(null, null, null);
- systemContext.start();
- systemContext.publish(new ModuleStart(this, null));
- SystemAtomicContext context1 = MockContextFactory.createSystemAtomicContext("foo", MockComponent.class);
- SystemAtomicContext context2 = MockContextFactory.createSystemAtomicContext("foo", MockComponent.class);
- systemContext.registerContext(context1);
+ SystemCompositeContext parent = new SystemCompositeContextImpl(null, null, null);
+ parent.start();
+
+ List<Class<?>> interfaces = new ArrayList<Class<?>>();
+ interfaces.add(Source.class);
+ Mock mock = mock(SystemAtomicContext.class);
+ mock.stubs().method("getName").will(returnValue("source"));
+ mock.expects(once()).method("stop");
+ mock.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context1 = (SystemAtomicContext) mock.proxy();
+ SystemAtomicContext context2 = (SystemAtomicContext) mock.proxy();
+ parent.registerContext(context1);
try {
- systemContext.registerContext(context2);
+ parent.registerContext(context2);
fail();
} catch (DuplicateNameException e) {
// ok
}
- systemContext.publish(new ModuleStop(this, null));
- systemContext.stop();
+ parent.stop();
}
protected void setUp() throws Exception {
@@ -36,9 +43,4 @@
super.tearDown();
}
- public static class MockComponent {
- public String hello(String message) {
- return message;
- }
- }
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemAtomicContextTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemAtomicContextTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemAtomicContextTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemAtomicContextTestCase.java Mon May 22 21:09:55 2006
@@ -1,12 +1,10 @@
package org.apache.tuscany.core.system.context;
import junit.framework.TestCase;
-import org.apache.tuscany.spi.ObjectFactory;
import org.apache.tuscany.core.injection.EventInvoker;
import org.apache.tuscany.core.injection.MethodEventInvoker;
import org.apache.tuscany.core.injection.PojoObjectFactory;
-import org.apache.tuscany.core.mock.context.scope.MockScopeContext;
-import org.apache.tuscany.spi.context.ScopeContext;
+import org.apache.tuscany.spi.ObjectFactory;
/**
* @version $$Rev$$ $$Date$$
@@ -17,12 +15,10 @@
public void testContextCreationAndInit() throws Exception {
ObjectFactory<Foo> factory = new PojoObjectFactory<Foo>(Foo.class.getConstructor((Class[]) null), null);
- ScopeContext scopeContext = new MockScopeContext();
- SystemAtomicContext context = new SystemAtomicContextImpl("foo", null, Foo.class,factory,false,initInvoker,null, null,null);
- context.setScopeContext(scopeContext);
- Foo instance = (Foo) context.getService(null);
- assertNotNull(instance);
- assertTrue(instance.initialized);
+ SystemAtomicContext context = new SystemAtomicContextImpl("foo", null, Foo.class, factory, false, initInvoker, null, null, null);
+ Foo foo = (Foo) context.createInstance().getInstance();
+ assertNotNull(foo);
+ assertTrue(foo.initialized);
}
protected void setUp() throws Exception {
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeContextResolutionTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeContextResolutionTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeContextResolutionTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeContextResolutionTestCase.java Mon May 22 21:09:55 2006
@@ -1,38 +1,34 @@
package org.apache.tuscany.core.system.context;
-import junit.framework.TestCase;
-import org.apache.tuscany.core.context.WorkContextImpl;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.context.scope.ModuleScopeContext;
-import org.apache.tuscany.core.mock.factories.MockContextFactory;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.tuscany.core.mock.component.Source;
import org.apache.tuscany.core.mock.component.SourceImpl;
import org.apache.tuscany.spi.context.AtomicContext;
-import org.apache.tuscany.spi.context.WorkContext;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* @version $$Rev$$ $$Date$$
*/
-public class SystemCompositeContextResolutionTestCase extends TestCase {
+public class SystemCompositeContextResolutionTestCase extends MockObjectTestCase {
- public void testComponentResolution() throws NoSuchMethodException {
- WorkContext workContext = new WorkContextImpl();
- ModuleScopeContext scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
- SystemCompositeContext composite = new SystemCompositeContextImpl("foo", null, null);
- composite.start();
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", SourceImpl.class);
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
- composite.registerContext(context);
- scopeContext.publish(new ModuleStart(this, composite));
- AtomicContext ctx = (AtomicContext) composite.getContext("source");
+ public void testContextResolution() throws NoSuchMethodException {
+ SystemCompositeContext parent = new SystemCompositeContextImpl("foo", null, null);
+ parent.start();
+ List<Class<?>> interfaces = new ArrayList<Class<?>>();
+ interfaces.add(Source.class);
+ Source originalSource = new SourceImpl();
+ Mock mock = mock(SystemAtomicContext.class);
+ mock.stubs().method("getName").will(returnValue("source"));
+ mock.stubs().method("getService").will(returnValue(originalSource));
+ mock.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context = (SystemAtomicContext) mock.proxy();
+ parent.registerContext(context);
+ AtomicContext ctx = (AtomicContext) parent.getContext("source");
Source source = (Source) ctx.getService();
assertNotNull(source);
- scopeContext.publish(new ModuleStop(this, composite));
- composite.stop();
- scopeContext.stop();
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeLifecycleTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeLifecycleTestCase.java?rev=408828&r1=408827&r2=408828&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeLifecycleTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/SystemCompositeLifecycleTestCase.java Mon May 22 21:09:55 2006
@@ -1,20 +1,18 @@
package org.apache.tuscany.core.system.context;
-import junit.framework.TestCase;
-import org.apache.tuscany.spi.context.WorkContext;
-import org.apache.tuscany.spi.context.AtomicContext;
-import org.apache.tuscany.core.context.WorkContextImpl;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.context.scope.ModuleScopeContext;
-import org.apache.tuscany.core.mock.factories.MockContextFactory;
-import org.apache.tuscany.core.mock.component.SourceImpl;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.tuscany.core.mock.component.Source;
+import org.apache.tuscany.core.mock.component.SourceImpl;
+import org.apache.tuscany.spi.context.AtomicContext;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* @version $$Rev$$ $$Date$$
*/
-public class SystemCompositeLifecycleTestCase extends TestCase {
+public class SystemCompositeLifecycleTestCase extends MockObjectTestCase {
public void testLifecycle() throws Exception {
SystemCompositeContext composite = new SystemCompositeContextImpl("foo", null, null);
@@ -27,32 +25,28 @@
}
public void testRestart() throws NoSuchMethodException {
- WorkContext workContext = new WorkContextImpl();
- ModuleScopeContext scopeContext = new ModuleScopeContext(workContext);
- scopeContext.start();
SystemCompositeContext composite = new SystemCompositeContextImpl("foo", null, null);
- composite.start();
- SystemAtomicContext context = MockContextFactory.createSystemAtomicContext("source", SourceImpl.class);
- scopeContext.register(context);
- context.setScopeContext(scopeContext);
+ List<Class<?>> interfaces = new ArrayList<Class<?>>();
+ interfaces.add(Source.class);
+ Source originalSource = new SourceImpl();
+ Mock mock = mock(SystemAtomicContext.class);
+ mock.expects(atLeastOnce()).method("start");
+ mock.expects(atLeastOnce()).method("stop");
+ mock.stubs().method("getName").will(returnValue("source"));
+ mock.stubs().method("getService").will(returnValue(originalSource));
+ mock.stubs().method("getServiceInterfaces").will(returnValue(interfaces));
+ SystemAtomicContext context = (SystemAtomicContext) mock.proxy();
composite.registerContext(context);
- scopeContext.publish(new ModuleStart(this, composite));
+
AtomicContext ctx = (AtomicContext) composite.getContext("source");
Source source = (Source) ctx.getService();
assertNotNull(source);
- scopeContext.publish(new ModuleStop(this, composite));
composite.stop();
- scopeContext.stop();
-
- scopeContext.start();
composite.start();
- scopeContext.publish(new ModuleStart(this, composite));
ctx = (AtomicContext) composite.getContext("source");
Source source2 = (Source) ctx.getService();
- assertNotSame(source, source2);
- scopeContext.publish(new ModuleStop(this, composite));
+ assertNotNull(source2);
composite.stop();
- scopeContext.stop();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org