X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcontainer%2FContainerTest.java;h=25ec9bc231582572134759715b374889ba1d8e94;hb=8de36ff0206c996baf3ee4adc3e2293b12ff5f39;hp=1d7d8a54c77e02d9cdb247635827862e7a233ff7;hpb=89c06d4d52b46c154128c97d6e758fa1f4fc7a6e;p=utils diff --git a/system/general/src/test/java/org/wamblee/system/container/ContainerTest.java b/system/general/src/test/java/org/wamblee/system/container/ContainerTest.java index 1d7d8a54..25ec9bc2 100644 --- a/system/general/src/test/java/org/wamblee/system/container/ContainerTest.java +++ b/system/general/src/test/java/org/wamblee/system/container/ContainerTest.java @@ -38,99 +38,72 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.List; - /** - * DOCUMENT ME! - * + * * @author $author$ * @version $Revision$ - */ + */ public class ContainerTest extends TestCase { - /** - * DOCUMENT ME! - */ private EventTracker tracker; - /** - * DOCUMENT ME! - * - * @throws Exception DOCUMENT ME! - */ @Override protected void setUp() throws Exception { super.setUp(); tracker = new EventTracker(); } - /** - * DOCUMENT ME! - * - * @param aProvided DOCUMENT ME! - * @param aProvider DOCUMENT ME! - * - * @return DOCUMENT ME! - */ private List> createProvidedInput( ProvidedInterface[] aProvided, Component aProvider) { List> result = new ArrayList>(); for (ProvidedInterface provided : aProvided) { result.add(new Pair(provided, - aProvider)); + aProvider)); } return result; } - /** - * DOCUMENT ME! - */ public void testEnvironmentApplication() { Environment environment = new Environment(tracker); Application application = new Application(tracker); - Container container = new Container("root", - new Component[] { environment, application }, - new ProvidedInterface[0], new RequiredInterface[0]); - Scope scope = container.start(); + Container container = new Container("root", new Component[] { + environment, application }, new ProvidedInterface[0], + new RequiredInterface[0]); + Scope scope = container.start(); assertTrue(container.isSealed()); - AssertionUtils.assertEquals(new String[] { - "start.environment", "start.application" - }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "start.environment", + "start.application" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); assertEquals(0, scope.getProvidedInterfaces().size()); assertEquals(environment.getString(), application.getString()); assertEquals(environment.getInteger(), application.getInteger()); } - /** - * DOCUMENT ME! - */ public void testEnvironmentApplicationSimpleConstructor() { Environment environment = new Environment(tracker); Application application = new Application(tracker); - Container container = new Container("root").addComponent(environment) + Container container = new Container("root").addComponent(environment) .addComponent(application); - Scope scope = container.start(); - AssertionUtils.assertEquals(new String[] { - "start.environment", "start.application" - }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + Scope scope = container.start(); + AssertionUtils.assertEquals(new String[] { "start.environment", + "start.application" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); assertEquals(0, scope.getProvidedInterfaces().size()); assertEquals(environment.getString(), application.getString()); assertEquals(environment.getInteger(), application.getInteger()); } - /** - * DOCUMENT ME! - */ public void testApplicationEnvironment() { try { Component environment = new Environment(); Component application = new Application(); - Container container = new Container("root", - new Component[] { application, environment }, - new ProvidedInterface[0], new RequiredInterface[0]); + Container container = new Container("root", new Component[] { + application, environment }, new ProvidedInterface[0], + new RequiredInterface[0]); container.start(); } catch (SystemAssemblyException e) { // e.printStackTrace(); @@ -140,47 +113,39 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testComposite() { Component environment = new Environment(tracker); Component application = new Application(tracker); assertEquals(0, tracker.getEventCount()); - Container system = new Container("all", - new Component[] { environment, application }, - new ProvidedInterface[0], new RequiredInterface[0]); - Scope runtime = system.start(); + Container system = new Container("all", new Component[] { environment, + application }, new ProvidedInterface[0], new RequiredInterface[0]); + Scope runtime = system.start(); List required = system.getRequiredInterfaces(); assertEquals(0, required.size()); List provided = system.getProvidedInterfaces(); assertEquals(0, provided.size()); - AssertionUtils.assertEquals(new String[] { - "start.environment", "start.application" - }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "start.environment", + "start.application" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); tracker.clear(); system.stop(runtime); - AssertionUtils.assertEquals(new String[] { - "stop.application", "stop.environment" - }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "stop.application", + "stop.environment" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); } - /** - * DOCUMENT ME! - */ public void testCompositeWithWrongProvidedInfo() { try { Component environment = new Environment(); Component application = new Application(); - Container system = new Container("all", - new Component[] { environment, application }, - new ProvidedInterface[] { - new DefaultProvidedInterface("float", Float.class) - }, new DefaultRequiredInterface[0]); + Container system = new Container("all", new Component[] { + environment, application }, + new ProvidedInterface[] { new DefaultProvidedInterface("float", + Float.class) }, new DefaultRequiredInterface[0]); system.validate(); } catch (SystemAssemblyException e) { return; @@ -189,19 +154,14 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testCompositeRequiredInterfaceNotProvided() { try { Component environment = new Environment(); Component application = new Application(); - Container system = new Container("all", - new Component[] { environment, application }, - new ProvidedInterface[0], - new RequiredInterface[] { - new DefaultRequiredInterface("string", String.class) - }); + Container system = new Container("all", new Component[] { + environment, application }, new ProvidedInterface[0], + new RequiredInterface[] { new DefaultRequiredInterface( + "string", String.class) }); system.start(); } catch (SystemAssemblyException e) { return; @@ -210,20 +170,15 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testCompositeWithSuperfluousRequiredInfo() { Component environment = new Environment(); Component application = new Application(); - Container system = new Container("all", - new Component[] { environment, application }, - new ProvidedInterface[0], - new RequiredInterface[] { - new DefaultRequiredInterface("float", Float.class) - }); - system.getRequiredInterfaces().get(0) - .setProvider(new DefaultProvidedInterface("hallo", Float.class)); + Container system = new Container("all", new Component[] { environment, + application }, new ProvidedInterface[0], + new RequiredInterface[] { new DefaultRequiredInterface("float", + Float.class) }); + system.getRequiredInterfaces().get(0).setProvider( + new DefaultProvidedInterface("hallo", Float.class)); system.start(); List required = system.getRequiredInterfaces(); @@ -233,17 +188,14 @@ public class ContainerTest extends TestCase { assertEquals(0, provided.size()); } - /** - * DOCUMENT ME! - */ public void testCompositeWithExternalDependencesNotProvided() { try { Component application = new Application(); - Container system = new Container("all", - new Component[] { application }, new ProvidedInterface[0], - application.getRequiredInterfaces() - .toArray(new RequiredInterface[0])); + Container system = new Container("all", + new Component[] { application }, new ProvidedInterface[0], + application.getRequiredInterfaces().toArray( + new RequiredInterface[0])); system.start(); } catch (SystemAssemblyException e) { return; @@ -252,14 +204,11 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testDuplicateComponent() { try { - Component comp1 = new Application(); - Component comp2 = new Application(); - Container system = new Container("top"); + Component comp1 = new Application(); + Component comp2 = new Application(); + Container system = new Container("top"); system.addComponent(comp1).addComponent(comp2); } catch (SystemAssemblyException e) { return; @@ -268,14 +217,11 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testInconsistentHierarchy() { try { - Component comp = new Application(); - Container system = new Container("top").addComponent(comp); - Container system2 = new Container("top2").addComponent(comp); + Component comp = new Application(); + Container system = new Container("top").addComponent(comp); + Container system2 = new Container("top2").addComponent(comp); } catch (SystemAssemblyException e) { return; } @@ -283,21 +229,18 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testCompositeWithExternalDependencesProvided() { Component environment = new Environment(); Component application = new Application(); - Container system = new Container("all", - new Component[] { application }, new ProvidedInterface[0], - application.getRequiredInterfaces() - .toArray(new RequiredInterface[0])); + Container system = new Container("all", + new Component[] { application }, new ProvidedInterface[0], + application.getRequiredInterfaces().toArray( + new RequiredInterface[0])); environment.start(new DefaultScope(new ProvidedInterface[0])); - system.getRequiredInterfaces().get(0) - .setProvider(environment.getProvidedInterfaces().get(0)); - system.getRequiredInterfaces().get(1) - .setProvider(environment.getProvidedInterfaces().get(1)); + system.getRequiredInterfaces().get(0).setProvider( + environment.getProvidedInterfaces().get(0)); + system.getRequiredInterfaces().get(1).setProvider( + environment.getProvidedInterfaces().get(1)); system.start(); @@ -308,17 +251,14 @@ public class ContainerTest extends TestCase { assertEquals(0, provided.size()); } - /** - * DOCUMENT ME! - */ public void testAmbiguousInterfaces() { try { Component environment1 = new Environment(); Component environment2 = new Environment(); - Component application = new Application(); - Container container = new Container("root", - new Component[] { environment1, environment2, application }, - new ProvidedInterface[0], new RequiredInterface[0]); + Component application = new Application(); + Container container = new Container("root", new Component[] { + environment1, environment2, application }, + new ProvidedInterface[0], new RequiredInterface[0]); container.start(); } catch (SystemAssemblyException e) { return; @@ -327,15 +267,12 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testIncompleteRequirements() { try { Component application = new Application(); - Container system = new Container("all", - new Component[] { application }, new ProvidedInterface[0], - new RequiredInterface[0]); + Container system = new Container("all", + new Component[] { application }, new ProvidedInterface[0], + new RequiredInterface[0]); system.start(); } catch (SystemAssemblyException e) { return; @@ -344,33 +281,26 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - * - * @throws Exception DOCUMENT ME! - * @throws RuntimeException DOCUMENT ME! - */ public void testEnvironmentApplicationRollbackOnException() throws Exception { Environment environment = new Environment(tracker); Application application = new Application() { - @Override - public Object doStart(Scope aScope) { - throw new RuntimeException(); - } - }; + @Override + public Object doStart(Scope aScope) { + throw new RuntimeException(); + } + }; try { - Container container = new Container("root", - new Component[] { environment, application }, - new ProvidedInterface[0], new RequiredInterface[0]); + Container container = new Container("root", new Component[] { + environment, application }, new ProvidedInterface[0], + new RequiredInterface[0]); container.start(); } catch (RuntimeException e) { - AssertionUtils.assertEquals(new String[] { - "start.environment", "stop.environment" - }, - tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "start.environment", + "stop.environment" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); return; } @@ -378,42 +308,35 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - * - * @throws Exception DOCUMENT ME! - * @throws RuntimeException DOCUMENT ME! - */ public void testEnvironmentApplicationRollbackOnExceptionWithExceptionOnStop() throws Exception { Environment environment = new Environment(tracker); // Application 1 will throw an exception while stopping. Application application1 = new Application("app1") { - @Override - public void doStop(Object aRuntime) { - throw new RuntimeException(); - } - }; + @Override + public void doStop(Object aRuntime) { + throw new RuntimeException(); + } + }; // application 2 will throw an exception while starting Application application2 = new Application("app2") { - public Object doStart(Scope aScope) { - throw new RuntimeException(); - } - }; + public Object doStart(Scope aScope) { + throw new RuntimeException(); + } + }; try { - Container container = new Container("root", - new Component[] { environment, application1, application2 }, - new ProvidedInterface[0], new RequiredInterface[0]); + Container container = new Container("root", new Component[] { + environment, application1, application2 }, + new ProvidedInterface[0], new RequiredInterface[0]); container.start(); } catch (RuntimeException e) { - AssertionUtils.assertEquals(new String[] { - "start.environment", "stop.environment" - }, - tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "start.environment", + "stop.environment" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); return; } @@ -421,71 +344,62 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testOptionalRequiredInterfaceProvidedOptionalInternal() { Application application = new Application(true); - Container container = new Container("top", - new Component[] { application }, new ProvidedInterface[0], - Application.required(true)); - Environment env = new Environment(); - container.getRequiredInterfaces().get(0) - .setProvider(env.getProvidedInterfaces().get(0)); - container.getRequiredInterfaces().get(1) - .setProvider(env.getProvidedInterfaces().get(1)); + Container container = new Container("top", + new Component[] { application }, new ProvidedInterface[0], + Application.required(true)); + Environment env = new Environment(); + container.getRequiredInterfaces().get(0).setProvider( + env.getProvidedInterfaces().get(0)); + container.getRequiredInterfaces().get(1).setProvider( + env.getProvidedInterfaces().get(1)); Scope external = new DefaultScope(env.getProvidedInterfaces()); env.start(external); container.start(external); - assertSame(env.getProvidedInterfaces().get(0), - container.getRequiredInterfaces().get(0).getProvider()); - assertSame(env.getProvidedInterfaces().get(1), - container.getRequiredInterfaces().get(1).getProvider()); - assertSame(env.getProvidedInterfaces().get(0), - application.getRequiredInterfaces().get(0).getProvider()); - assertSame(env.getProvidedInterfaces().get(1), - application.getRequiredInterfaces().get(1).getProvider()); - } - - /** - * DOCUMENT ME! - */ + assertSame(env.getProvidedInterfaces().get(0), container + .getRequiredInterfaces().get(0).getProvider()); + assertSame(env.getProvidedInterfaces().get(1), container + .getRequiredInterfaces().get(1).getProvider()); + assertSame(env.getProvidedInterfaces().get(0), application + .getRequiredInterfaces().get(0).getProvider()); + assertSame(env.getProvidedInterfaces().get(1), application + .getRequiredInterfaces().get(1).getProvider()); + } + public void testOptionalRequiredInterfaceNotProvidedOptionalInternal() { Application application = new Application(true); - Container container = new Container("top", - new Component[] { application }, new ProvidedInterface[0], - Application.required(true)); - Environment env = new Environment(); - container.getRequiredInterfaces().get(0) - .setProvider(env.getProvidedInterfaces().get(0)); + Container container = new Container("top", + new Component[] { application }, new ProvidedInterface[0], + Application.required(true)); + Environment env = new Environment(); + container.getRequiredInterfaces().get(0).setProvider( + env.getProvidedInterfaces().get(0)); Scope external = new DefaultScope(new ProvidedInterface[0]); - external.publishInterface(env.getProvidedInterfaces().get(0), - env.getString()); + external.publishInterface(env.getProvidedInterfaces().get(0), env + .getString()); container.start(external); - assertSame(env.getProvidedInterfaces().get(0), - container.getRequiredInterfaces().get(0).getProvider()); + assertSame(env.getProvidedInterfaces().get(0), container + .getRequiredInterfaces().get(0).getProvider()); assertNull(container.getRequiredInterfaces().get(1).getProvider()); - assertSame(env.getProvidedInterfaces().get(0), - application.getRequiredInterfaces().get(0).getProvider()); + assertSame(env.getProvidedInterfaces().get(0), application + .getRequiredInterfaces().get(0).getProvider()); assertNull(application.getRequiredInterfaces().get(1).getProvider()); } - /** - * DOCUMENT ME! - */ public void testOptionalRequiredInterfaceProvidedMandatoryInternal() { Application application = new Application(); - Container container = new Container("top", - new Component[] { application }, new ProvidedInterface[0], - Application.required(true)); - Environment env = new Environment(); - container.getRequiredInterfaces().get(0) - .setProvider(env.getProvidedInterfaces().get(0)); - container.getRequiredInterfaces().get(1) - .setProvider(env.getProvidedInterfaces().get(1)); + Container container = new Container("top", + new Component[] { application }, new ProvidedInterface[0], + Application.required(true)); + Environment env = new Environment(); + container.getRequiredInterfaces().get(0).setProvider( + env.getProvidedInterfaces().get(0)); + container.getRequiredInterfaces().get(1).setProvider( + env.getProvidedInterfaces().get(1)); try { container.start(); @@ -496,9 +410,6 @@ public class ContainerTest extends TestCase { fail(); } - /** - * DOCUMENT ME! - */ public void testSealed() { final Container container = new Container("xx"); assertFalse(container.isSealed()); @@ -506,55 +417,52 @@ public class ContainerTest extends TestCase { assertTrue(container.isSealed()); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.addComponent(new Application()); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.addComponent(new Application()); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectRequiredProvided("x", "y", "a", "b"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectRequiredProvided("x", "y", "a", "b"); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalRequired("x", "y", "a"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalRequired("x", "y", "a"); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalProvided("x", "y", "z"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalProvided("x", "y", "z"); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.addProvidedInterface(new DefaultProvidedInterface( - "xx", String.class)); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.addProvidedInterface(new DefaultProvidedInterface( + "xx", String.class)); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.addRequiredInterface(new DefaultRequiredInterface( - "xx", String.class)); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.addRequiredInterface(new DefaultRequiredInterface( + "xx", String.class)); + } + }, SystemAssemblyException.class); } - /** - * DOCUMENT ME! - */ public void testRestriction() { - Environment env1 = new Environment("env1"); - Environment env2 = new Environment("env2"); - Application app = new Application("app"); - Container container = new Container("top").addComponent(env1) + Environment env1 = new Environment("env1"); + Environment env2 = new Environment("env2"); + Application app = new Application("app"); + Container container = new Container("top").addComponent(env1) .addComponent(env2).addComponent(app); container.connectRequiredProvided("app", null, "env1", null); container.start(); @@ -564,21 +472,18 @@ public class ContainerTest extends TestCase { assertFalse(env2.getInteger().equals(app.getInteger())); } - /** - * DOCUMENT ME! - */ public void testRestrictionWithFromAndToInterfaceName() { - Environment env1 = new Environment("env1"); - Environment env2 = new Environment("env2"); - Application app = new Application("app"); - Container container = new Container("top").addComponent(env1) + Environment env1 = new Environment("env1"); + Environment env2 = new Environment("env2"); + Application app = new Application("app"); + Container container = new Container("top").addComponent(env1) .addComponent(env2).addComponent(app); - container.connectRequiredProvided("app", - app.getRequiredInterfaces().get(0).getName(), "env1", - env1.getProvidedInterfaces().get(0).getName()); - container.connectRequiredProvided("app", - app.getRequiredInterfaces().get(1).getName(), "env2", - env2.getProvidedInterfaces().get(1).getName()); + container.connectRequiredProvided("app", app.getRequiredInterfaces() + .get(0).getName(), "env1", env1.getProvidedInterfaces().get(0) + .getName()); + container.connectRequiredProvided("app", app.getRequiredInterfaces() + .get(1).getName(), "env2", env2.getProvidedInterfaces().get(1) + .getName()); container.start(); assertEquals(env1.getString(), app.getString()); assertEquals(env2.getInteger(), app.getInteger()); @@ -586,71 +491,63 @@ public class ContainerTest extends TestCase { assertFalse(env1.getInteger().equals(app.getInteger())); } - /** - * DOCUMENT ME! - */ public void testRestrictionWrongComponentNames() { - Environment env1 = new Environment("env1"); - Environment env2 = new Environment("env2"); - Application app = new Application("app"); + Environment env1 = new Environment("env1"); + Environment env2 = new Environment("env2"); + Application app = new Application("app"); final Container container = new Container("top").addComponent(env1) .addComponent(env2).addComponent(app); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectRequiredProvided("app2", null, "env1", null); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectRequiredProvided("app2", null, "env1", null); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectRequiredProvided("app", null, "env3", null); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectRequiredProvided("app", null, "env3", null); + } + }, SystemAssemblyException.class); } - /** - * DOCUMENT ME! - */ public void testRestrictionWrongInterfaceNames() { - final Environment env1 = new Environment("env1"); - Environment env2 = new Environment("env2"); - final Application app = new Application("app"); - final Container container = new Container("top").addComponent(env1) + final Environment env1 = new Environment("env1"); + Environment env2 = new Environment("env2"); + final Application app = new Application("app"); + final Container container = new Container("top").addComponent(env1) .addComponent(env2).addComponent(app); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectRequiredProvided("app", - app.getRequiredInterfaces().get(0).getName() + "xxx", - "env1", null); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectRequiredProvided("app", app + .getRequiredInterfaces().get(0).getName() + + "xxx", "env1", null); + } + }, SystemAssemblyException.class); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectRequiredProvided("app", null, "env1", - env1.getProvidedInterfaces().get(0).getName() + "yyy"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectRequiredProvided("app", null, "env1", env1 + .getProvidedInterfaces().get(0).getName() + + "yyy"); + } + }, SystemAssemblyException.class); } - /** - * DOCUMENT ME! - */ public void testProvidedInDifferentScopes() { // Scoping problem occurred. Externally and internally provided // components clashed // because unique id generation in the scope was wrong. - StringComponent str = new StringComponent("string"); - Application app = new Application("app"); - Container container = new Container("top").addComponent(str) + StringComponent str = new StringComponent("string"); + Application app = new Application("app"); + Container container = new Container("top").addComponent(str) .addComponent(app); container.addRequiredInterface(new DefaultRequiredInterface("integer", - Integer.class)); + Integer.class)); ProvidedInterface provided = new DefaultProvidedInterface("hallo", - Integer.class); + Integer.class); container.getRequiredInterfaces().get(0).setProvider(provided); Scope external = new DefaultScope(new ProvidedInterface[0]); @@ -659,17 +556,14 @@ public class ContainerTest extends TestCase { Scope scope = container.start(external); } - /** - * DOCUMENT ME! - */ public void testProvidedInterfaces() { - Environment env = new Environment(tracker); - Container envcontainer = new Container("0").addComponent(env) - .addProvidedInterface(new DefaultProvidedInterface("string", - String.class)) - .addProvidedInterface(new DefaultProvidedInterface("integer", - Integer.class)); - Scope scope = envcontainer.start(); + Environment env = new Environment(tracker); + Container envcontainer = new Container("0").addComponent(env) + .addProvidedInterface( + new DefaultProvidedInterface("string", String.class)) + .addProvidedInterface( + new DefaultProvidedInterface("integer", Integer.class)); + Scope scope = envcontainer.start(); AssertionUtils.assertEquals(new String[] { "start.environment" }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); @@ -677,66 +571,57 @@ public class ContainerTest extends TestCase { envcontainer.stop(scope); } - /** - * DOCUMENT ME! - */ public void testCoupleTwoContainers() { - Environment env = new Environment(tracker); - Container envcontainer = new Container("0").addComponent(env) - .addProvidedInterface(new DefaultProvidedInterface("string", - String.class)) - .addProvidedInterface(new DefaultProvidedInterface("integer", - Integer.class)); - - Application app = new Application(tracker); - Container appcontainer = new Container("1").addComponent(app) - .addRequiredInterface(new DefaultRequiredInterface("string", - String.class)) - .addRequiredInterface(new DefaultRequiredInterface("integer", - Integer.class)); - - Container top = new Container("top"); + Environment env = new Environment(tracker); + Container envcontainer = new Container("0").addComponent(env) + .addProvidedInterface( + new DefaultProvidedInterface("string", String.class)) + .addProvidedInterface( + new DefaultProvidedInterface("integer", Integer.class)); + + Application app = new Application(tracker); + Container appcontainer = new Container("1").addComponent(app) + .addRequiredInterface( + new DefaultRequiredInterface("string", String.class)) + .addRequiredInterface( + new DefaultRequiredInterface("integer", Integer.class)); + + Container top = new Container("top"); top.addComponent(envcontainer).addComponent(appcontainer); top.start(); - AssertionUtils.assertEquals(new String[] { - "start.environment", "start.application" - }, tracker.getEvents(Thread.currentThread()).toArray(new String[0])); + AssertionUtils.assertEquals(new String[] { "start.environment", + "start.application" }, tracker.getEvents(Thread.currentThread()) + .toArray(new String[0])); } - /** - * DOCUMENT ME! - */ public void testNonUniqueRequiredInterface() { final Container container = new Container("top"); container.addRequiredInterface(new DefaultRequiredInterface("i", - Integer.class)); + Integer.class)); container.addRequiredInterface(new DefaultRequiredInterface("x", - String.class)); + String.class)); container.addRequiredInterface(new DefaultRequiredInterface("y", - String.class)); + String.class)); Application app = new Application("1"); container.addComponent(app); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.start(); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.start(); + } + }, SystemAssemblyException.class); - container.connectExternalRequired("1", - app.getRequiredInterfaces().get(0).getName(), "y"); + container.connectExternalRequired("1", app.getRequiredInterfaces().get( + 0).getName(), "y"); - ProvidedInterface i = new DefaultProvidedInterface("i", - Integer.class); - ProvidedInterface x = new DefaultProvidedInterface("x", - String.class); - ProvidedInterface y = new DefaultProvidedInterface("y", - String.class); + ProvidedInterface i = new DefaultProvidedInterface("i", Integer.class); + ProvidedInterface x = new DefaultProvidedInterface("x", String.class); + ProvidedInterface y = new DefaultProvidedInterface("y", String.class); - Scope externalScope = new DefaultScope(new ProvidedInterface[0]); + Scope externalScope = new DefaultScope(new ProvidedInterface[0]); externalScope.publishInterface(i, 100); externalScope.publishInterface(x, "x-value"); @@ -751,124 +636,120 @@ public class ContainerTest extends TestCase { assertEquals("y-value", app.getString()); } - /** - * DOCUMENT ME! - */ public void testNonUniqueRequiredInterfaceWrongNames() { final Container container = new Container("top"); container.addRequiredInterface(new DefaultRequiredInterface("i", - Integer.class)); + Integer.class)); container.addRequiredInterface(new DefaultRequiredInterface("x", - String.class)); + String.class)); container.addRequiredInterface(new DefaultRequiredInterface("y", - String.class)); + String.class)); final Application app = new Application("1"); container.addComponent(app); // wrong component name. AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalRequired("2", "x", "y"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalRequired("2", "x", "y"); + } + }, SystemAssemblyException.class); // Wrong interface name of component. AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalRequired("1", - app.getRequiredInterfaces().get(0).getName() + "xxx", - "y"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalRequired("1", app + .getRequiredInterfaces().get(0).getName() + + "xxx", "y"); + } + }, SystemAssemblyException.class); // Wrong external interface name of container AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalRequired("1", - app.getRequiredInterfaces().get(0).getName(), "z"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalRequired("1", app + .getRequiredInterfaces().get(0).getName(), "z"); + } + }, SystemAssemblyException.class); } - /** - * DOCUMENT ME! - */ public void testNonUniqueProvidedInterface() { - final Container container = new Container("top").addProvidedInterface(new DefaultProvidedInterface( - "external", String.class)); - Environment env1 = new Environment("env1"); - Environment env2 = new Environment("env2"); + final Container container = new Container("top") + .addProvidedInterface(new DefaultProvidedInterface("external", + String.class)); + Environment env1 = new Environment("env1"); + Environment env2 = new Environment("env2"); container.addComponent(env1); container.addComponent(env2); AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.start(); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.start(); + } + }, SystemAssemblyException.class); // now choose env2 container.connectExternalProvided(container.getProvidedInterfaces() - .get(0).getName(), env2.getName(), - env2.getProvidedInterfaces().get(0).getName()); + .get(0).getName(), env2.getName(), env2.getProvidedInterfaces() + .get(0).getName()); Scope scope = container.start(); // check the value of the provided interface of the container - String value = scope.getInterfaceImplementation(container.getProvidedInterfaces() - .get(0), String.class); + String value = scope.getInterfaceImplementation(container + .getProvidedInterfaces().get(0), String.class); assertNotNull(value); assertEquals(value, env2.getString()); assertFalse(value.equals(env1.getString())); } - /** - * DOCUMENT ME! - */ public void testNonUniqueProvidedInterfaceWrongNames() { - final Container container = new Container("top").addProvidedInterface(new DefaultProvidedInterface( - "external", String.class)); - final Environment env1 = new Environment("env1"); - final Environment env2 = new Environment("env2"); + final Container container = new Container("top") + .addProvidedInterface(new DefaultProvidedInterface("external", + String.class)); + final Environment env1 = new Environment("env1"); + final Environment env2 = new Environment("env2"); container.addComponent(env1); container.addComponent(env2); // Wrong external provided interface name AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalProvided(container.getProvidedInterfaces() - .get(0).getName() + "xx", "env1", - env1.getProvidedInterfaces().get(0).getName()); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container + .connectExternalProvided(container.getProvidedInterfaces() + .get(0).getName() + + "xx", "env1", env1.getProvidedInterfaces().get(0) + .getName()); + } + }, SystemAssemblyException.class); // Wrong provided interface name. AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalProvided(container.getProvidedInterfaces() - .get(0).getName(), "env1", - env1.getProvidedInterfaces().get(0).getName() + "xx"); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalProvided(container + .getProvidedInterfaces().get(0).getName(), "env1", env1 + .getProvidedInterfaces().get(0).getName() + + "xx"); + } + }, SystemAssemblyException.class); // Wrong provided component AssertionUtils.assertException(new AssertionUtils.ErroneousCode() { - @Override - public void run() throws Exception { - container.connectExternalProvided(container.getProvidedInterfaces() - .get(0).getName(), "env3", - env1.getProvidedInterfaces().get(0).getName()); - } - }, SystemAssemblyException.class); + @Override + public void run() throws Exception { + container.connectExternalProvided(container + .getProvidedInterfaces().get(0).getName(), "env3", env1 + .getProvidedInterfaces().get(0).getName()); + } + }, SystemAssemblyException.class); } private static class MyMultiple implements Serializable, Runnable {