X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fadapters%2FClassAdapterTest.java;h=3424df9500ca3987b32547a452ca6237b906ca50;hb=8de36ff0206c996baf3ee4adc3e2293b12ff5f39;hp=f25d345917e111dd56c5b8570bbfd618451c8f85;hpb=8c1a962fa34da530f9933ab7743607fefcea9871;p=utils diff --git a/system/general/src/test/java/org/wamblee/system/adapters/ClassAdapterTest.java b/system/general/src/test/java/org/wamblee/system/adapters/ClassAdapterTest.java index f25d3459..3424df95 100644 --- a/system/general/src/test/java/org/wamblee/system/adapters/ClassAdapterTest.java +++ b/system/general/src/test/java/org/wamblee/system/adapters/ClassAdapterTest.java @@ -1,91 +1,101 @@ /* * Copyright 2008 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. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - */ + */ package org.wamblee.system.adapters; -import java.util.Collections; -import java.util.List; - +import org.wamblee.system.container.Container; import org.wamblee.system.core.Component; -import org.wamblee.system.core.Container; -import org.wamblee.system.core.DefaultProvidedInterface; import org.wamblee.system.core.ProvidedInterface; import org.wamblee.system.core.RequiredInterface; -import org.wamblee.system.core.RequiredInterfaceComparator; 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"); + ClassConfiguration x4Config = new ClassConfiguration(X4.class); + x4Config.getObjectConfig().getSetterConfig().initAllSetters(); - public void testSimpleConstructorInjection() { - ClassConfiguration x1Config = new ClassConfiguration(X1.class); - x1Config.getConstructorConfig().getParameters().setValue(0, "hello"); - ClassConfiguration x4Config = new ClassConfiguration(X4.class); - 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); + } + + 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()); - } + } }