*/
package org.wamblee.system.container;
+import static org.mockito.Matchers.*;
+import static org.mockito.Mockito.*;
+
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import junit.framework.TestCase;
-import org.easymock.classextension.ConstructorArgs;
-import org.easymock.classextension.EasyMock;
-import org.easymock.classextension.IMocksControl;
import org.wamblee.general.Pair;
import org.wamblee.system.core.Component;
import org.wamblee.system.core.DefaultProvidedInterface;
import org.wamblee.system.core.StringComponent;
import org.wamblee.system.core.SystemAssemblyException;
import org.wamblee.test.AssertionUtils;
-import org.wamblee.test.EasyMockMatchers;
import org.wamblee.test.EventTracker;
public class ContainerTest extends TestCase {
public void testEnvironmentApplicationRollbackOnException()
throws Exception {
- IMocksControl control = EasyMock.createStrictControl();
-
Environment environment = new Environment(_tracker);
- Application application = control.createMock(Application.class,
- new ConstructorArgs(Application.class.getConstructor()),
- Application.class.getDeclaredMethod("doStart", Scope.class));
-
- application.doStart(EasyMockMatchers.anyObject(Scope.class));
- EasyMock.expectLastCall().andThrow(new RuntimeException());
- control.replay();
-
+ Application application = new Application() {
+ @Override
+ public Object doStart(Scope aScope) {
+ throw new RuntimeException();
+ }
+ };
+
try {
Container container = new Container("root", new Component[] {
environment, application }, new ProvidedInterface[0],
public void testEnvironmentApplicationRollbackOnExceptionWithExceptionOnStop()
throws Exception {
- IMocksControl control = EasyMock.createControl();
Environment environment = new Environment(_tracker);
// Application 1 will throw an exception while stopping.
- Application application1 = control.createMock(Application.class,
- new ConstructorArgs(Application.class.getConstructor()),
- Application.class.getDeclaredMethod("doStop", Object.class));
-
- application1.doStop(EasyMock.anyObject());
- EasyMock.expectLastCall().andThrow(new RuntimeException());
+ Application application1 = new Application("app1") {
+ @Override
+ public void doStop(Object aRuntime) {
+ throw new RuntimeException();
+ }
+ };
// application 2 will throw an exception while starting
- Application application2 = control.createMock(Application.class,
- new ConstructorArgs(Application.class
- .getConstructor(String.class), "application2"),
- Application.class.getDeclaredMethod("doStart", Scope.class));
-
- application2.doStart(EasyMockMatchers.anyObject(Scope.class));
- EasyMock.expectLastCall().andThrow(new RuntimeException());
-
- control.replay();
+ Application application2 = new Application("app2") {
+ public Object doStart(Scope aScope) {
+ throw new RuntimeException();
+ }
+ };
try {
Container container = new Container("root", new Component[] {