/*
- * Copyright 2008 the original author or authors.
+ * Copyright 2005-2010 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import org.wamblee.system.core.ProvidedInterface;
import org.wamblee.system.core.RequiredInterface;
import org.wamblee.system.core.Scope;
+
import org.wamblee.test.AssertionUtils;
+/**
+ *
+ * @author $author$
+ * @version $Revision$
+ */
public class ClassAdapterTest extends AdapterTestCase {
+ public void testSimpleConstructorInjection() {
+ ClassConfiguration x1Config = new ClassConfiguration(X1.class);
+ x1Config.getObjectConfig().getSetterConfig().initAllSetters();
+ x1Config.getConstructorConfig().getParameters().setValue(0, "hello");
-
- public void testSimpleConstructorInjection() {
- ClassConfiguration x1Config = new ClassConfiguration(X1.class);
- x1Config.getObjectConfig().getSetterConfig().initAllSetters();
- x1Config.getConstructorConfig().getParameters().setValue(0, "hello");
ClassConfiguration x4Config = new ClassConfiguration(X4.class);
x4Config.getObjectConfig().getSetterConfig().initAllSetters();
-
+
ClassAdapter x1Adapter = new ClassAdapter("x1", x1Config);
ClassAdapter x4Adapter = new ClassAdapter("x4", x4Config);
-
- Container container = new Container("top", new Component[] {
- x1Adapter, x4Adapter
- }, new ProvidedInterface[0], new RequiredInterface[0]);
-
+
+ Container container = new Container("top", new Component[] { x1Adapter,
+ x4Adapter }, new ProvidedInterface[0], new RequiredInterface[0]);
+
Scope scope = container.start();
AssertionUtils.assertEquals(new String[] { "x1(hello)", "x4(x1)" },
- EVENT_TRACKER.getEvents(Thread.currentThread()).toArray());
-
+ EVENT_TRACKER.getEvents(Thread.currentThread()).toArray());
+
Object obj1 = scope.getRuntime(x1Adapter);
- assertTrue(obj1 instanceof X1);
+ assertTrue(obj1 instanceof X1);
+
Object obj4 = scope.getRuntime(x4Adapter);
assertTrue(obj4 instanceof X4);
-
+
X1 x1 = (X1) obj1;
X4 x4 = (X4) obj4;
-
+
assertSame(x1, x4.getX1());
- }
-
- public void testConstructorAndSetterInjection() {
- ClassConfiguration x1Config = new ClassConfiguration(X1.class);
- x1Config.getObjectConfig().getSetterConfig().initAllSetters();
+ }
+
+ public void testConstructorAndSetterInjection() {
+ ClassConfiguration x1Config = new ClassConfiguration(X1.class);
+ x1Config.getObjectConfig().getSetterConfig().initAllSetters();
x1Config.getConstructorConfig().getParameters().setValue(0, "hello");
+
ClassConfiguration x4Config = new ClassConfiguration(X4.class);
x4Config.getObjectConfig().getSetterConfig().initAllSetters();
+
ClassConfiguration x8Config = new ClassConfiguration(X8.class);
x8Config.getObjectConfig().getSetterConfig().initAllSetters();
-
+
ClassAdapter x1Adapter = new ClassAdapter("x1", x1Config);
ClassAdapter x4Adapter = new ClassAdapter("x4", x4Config);
ClassAdapter x8Adapter = new ClassAdapter("x8", x8Config);
-
- Container container = new Container("top", new Component[] {
- x1Adapter, x4Adapter, x8Adapter
- }, new ProvidedInterface[0], new RequiredInterface[0]);
-
+
+ Container container = new Container("top", new Component[] { x1Adapter,
+ x4Adapter, x8Adapter }, new ProvidedInterface[0],
+ new RequiredInterface[0]);
+
Scope scope = container.start();
- AssertionUtils.assertEquals(new String[] { "x1(hello)", "x4(x1)", "x8(x1)", "x8.setX4(x4)" },
- EVENT_TRACKER.getEvents(Thread.currentThread()).toArray());
-
+ AssertionUtils.assertEquals(new String[] { "x1(hello)", "x4(x1)",
+ "x8(x1)", "x8.setX4(x4)" }, EVENT_TRACKER.getEvents(
+ Thread.currentThread()).toArray());
+
Object obj1 = scope.getRuntime(x1Adapter);
- assertTrue(obj1 instanceof X1);
+ assertTrue(obj1 instanceof X1);
+
Object obj4 = scope.getRuntime(x4Adapter);
assertTrue(obj4 instanceof X4);
- Object obj8 = scope.getRuntime(x8Adapter);
-
+
+ Object obj8 = scope.getRuntime(x8Adapter);
+
X1 x1 = (X1) obj1;
X4 x4 = (X4) obj4;
- X8 x8 = (X8) obj8;
-
+ X8 x8 = (X8) obj8;
+
assertSame(x4, x8.getX4());
assertSame(x1, x8.getX1());
- }
+ }
}