X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fcore%2FAbstractComponentTest.java;h=2fd48f6e4c08de37cb13d62aab3ddcb632db3f6c;hb=32a8562695029cf13d915bc7941a61fe07ff0005;hp=ebda473d1b46cabf8e1b90082c0b397f926344e6;hpb=dea786c9d49228a37cb5fd5b4113b86d9f6cddbf;p=utils diff --git a/system/general/src/test/java/org/wamblee/system/core/AbstractComponentTest.java b/system/general/src/test/java/org/wamblee/system/core/AbstractComponentTest.java index ebda473d..2fd48f6e 100644 --- a/system/general/src/test/java/org/wamblee/system/core/AbstractComponentTest.java +++ b/system/general/src/test/java/org/wamblee/system/core/AbstractComponentTest.java @@ -21,7 +21,7 @@ public class AbstractComponentTest extends TestCase { public void testNotAllInterfacesStarted() { try { - Component component = new AbstractComponent("xx", + Component component = new AbstractComponent("xx", new ProvidedInterface[] { new DefaultProvidedInterface( "xxx", String.class) }, new RequiredInterface[0]) { @Override @@ -42,4 +42,27 @@ public class AbstractComponentTest extends TestCase { } fail(); } + + public void testUnexpectedServicesStarted() { + try { + Component component = new AbstractComponent("xx", + new ProvidedInterface[0], new RequiredInterface[0]) { + @Override + protected Object doStart(Scope aScope) { + addInterface(new DefaultProvidedInterface("x", Integer.class), 100, aScope); + return null; + } + + @Override + protected void doStop(Object aRuntime) { + // Empty. + } + }; + component.start(new DefaultScope(component.getProvidedInterfaces())); + } catch (SystemAssemblyException e) { + //e.printStackTrace(); + return; + } + fail(); + } }