[picocontainer-scm] [5577] java/2.x/trunk/pico/container/src/test/org/picocontainer/injectors: better testing, back to private inner class

paul-yCVjj/[email protected]
Newsgroups gmane.comp.java.picocontainer.cvs
Message-ID <[email protected]>
Revision 5577
Author paul
Date 2010-02-04 23:11:38 -0600 (Thu, 04 Feb 2010)

Log Message

better testing, back to private inner class

Modified Paths

- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjectionFactory.java

- java/2.x/trunk/pico/container/src/test/org/picocontainer/injectors/LifecycleAdapterTestCase.java

Diff

Modified: java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjectionFactory.java (5576 => 5577)

--- java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjectionFactory.java 2010-02-05 04:49:44 UTC (rev 5576)
+++ java/2.x/trunk/pico/container/src/java/org/picocontainer/injectors/AbstractInjectionFactory.java 2010-02-05 05:11:38 UTC (rev 5577)
@@ -25,7 +25,7 @@
}
}

- public static class LifecycleAdapter implements ComponentAdapter, LifecycleStrategy, ComponentMonitorStrategy, Serializable {
+ private static class LifecycleAdapter implements ComponentAdapter, LifecycleStrategy, ComponentMonitorStrategy, Serializable {
private final Injector injector;
private final LifecycleStrategy lifecycleStrategy;

Modified: java/2.x/trunk/pico/container/src/test/org/picocontainer/injectors/LifecycleAdapterTestCase.java (5576 => 5577)

--- java/2.x/trunk/pico/container/src/test/org/picocontainer/injectors/LifecycleAdapterTestCase.java 2010-02-05 04:49:44 UTC (rev 5576)
+++ java/2.x/trunk/pico/container/src/test/org/picocontainer/injectors/LifecycleAdapterTestCase.java 2010-02-05 05:11:38 UTC (rev 5577)
@@ -1,8 +1,7 @@
package org.picocontainer.injectors;

import org.junit.Test;
-import org.picocontainer.ComponentMonitorStrategy;
-import org.picocontainer.Parameter;
+import org.picocontainer.*;
import org.picocontainer.monitors.NullComponentMonitor;
import org.picocontainer.monitors.WriterComponentMonitor;
import org.picocontainer.tck.AbstractComponentAdapterTest;
@@ -11,6 +10,7 @@
import org.picocontainer.testmodel.Touchable;

import java.io.PrintWriter;
+import java.util.Properties;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -18,28 +18,43 @@
public class LifecycleAdapterTestCase {

private final ConstructorInjector INJECTOR = new ConstructorInjector(
- NullLifecycle.class, NullLifecycle.class, new Parameter[0],
+ Foo.class, Foo.class, new Parameter[0],
new NullComponentMonitor(), false);

private AbstractComponentAdapterTest.RecordingLifecycleStrategy strategy = new AbstractComponentAdapterTest.RecordingLifecycleStrategy(new StringBuffer());

+ AbstractInjectionFactory ais = new AbstractInjectionFactory() {
+ public <T> ComponentAdapter<T> createComponentAdapter(ComponentMonitor componentMonitor, LifecycleStrategy lifecycleStrategy, Properties componentProperties, Object componentKey, Class<T> componentImplementation, Parameter... parameters) throws PicoCompositionException {
+ return wrapLifeCycle(INJECTOR, lifecycleStrategy);
+ }
+ };
+
@Test
public void passesOnLifecycleOperations() {
- AbstractInjectionFactory.LifecycleAdapter la = new AbstractInjectionFactory.LifecycleAdapter(INJECTOR, strategy);
+
+ LifecycleStrategy adapter = (LifecycleStrategy) ais.createComponentAdapter(new NullComponentMonitor(), strategy, new Properties(), null, null, new Parameter[0]);
+ assertEquals("org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter", adapter.getClass().getName());
Touchable touchable = new SimpleTouchable();
- la.start(touchable);
- la.stop(touchable);
- la.dispose(touchable);
+ adapter.start(touchable);
+ adapter.stop(touchable);
+ adapter.dispose(touchable);
assertEquals("<start<stop<dispose", strategy.recording());
}

@Test
public void canHaveMonitorChanged() {
- AbstractComponentAdapterTest.RecordingLifecycleStrategy strategy = new AbstractComponentAdapterTest.RecordingLifecycleStrategy(new StringBuffer());
- ComponentMonitorStrategy cms = new AbstractInjectionFactory.LifecycleAdapter(INJECTOR, strategy);
- assertTrue(cms.currentMonitor() instanceof NullComponentMonitor);
- cms.changeMonitor(new WriterComponentMonitor(new PrintWriter(System.out)));
- assertTrue(cms.currentMonitor() instanceof WriterComponentMonitor);
+ ComponentMonitorStrategy adapter = (ComponentMonitorStrategy) ais.createComponentAdapter(new NullComponentMonitor(), strategy, new Properties(), Foo.class, Foo.class, new Parameter[0]);
+ assertTrue(adapter.currentMonitor() instanceof NullComponentMonitor);
+ adapter.changeMonitor(new WriterComponentMonitor(new PrintWriter(System.out)));
+ assertTrue(adapter.currentMonitor() instanceof WriterComponentMonitor);

}
+
+ public static class Foo implements Startable {
+ public void start() {
+ }
+ public void stop() {
+ }
+ }
+
}

----------

To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.