/*
- * 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.
* 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 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 ClassConfigurationTest extends AdapterTestCase {
-
public void testConstructorConfig() {
ClassConfiguration classConfig = new ClassConfiguration(X1.class);
- ConstructorConfiguration config = classConfig.getConstructorConfig()
- .greedy();
-
ProvidedInterface provided = new DefaultProvidedInterface("arg",
- String.class);
+ String.class);
List<RequiredInterface> required = classConfig.getRequiredInterfaces();
assertEquals(1, required.size());
required.get(0).setProvider(provided);
- scope.publishInterface(provided, "hello");
- classConfig.create(scope);
+ getScope().publishInterface(provided, "hello");
+ classConfig.create(getScope());
AssertionUtils.assertEquals(new String[] { "x1(hello)" },
- AdapterTestCase.EVENT_TRACKER.getEvents(Thread.currentThread())
- .toArray());
+ AdapterTestCase.getEventTracker().getEvents(Thread.currentThread())
+ .toArray());
}
public void testConstructorConfigWithSetters() {
ClassConfiguration classConfig = new ClassConfiguration(X7.class);
classConfig.getConstructorConfig().select(Boolean.class);
- classConfig.getObjectConfig().getSetterConfig().initAllSetters().values("setPort").setValue(0, 10);
-
- ProvidedInterface providedBoolean = new DefaultProvidedInterface("boolean",
- Boolean.class);
- ProvidedInterface providedHost = new DefaultProvidedInterface("host", String.class);
+ classConfig.getObjectConfig().getSetterConfig().initAllSetters()
+ .values("setPort").setValue(0, 10);
+
+ ProvidedInterface providedBoolean = new DefaultProvidedInterface(
+ "boolean", Boolean.class);
+ ProvidedInterface providedHost = new DefaultProvidedInterface("host",
+ String.class);
List<RequiredInterface> required = classConfig.getRequiredInterfaces();
Collections.sort(required, new RequiredInterfaceComparator());
required.get(0).setProvider(providedBoolean);
required.get(1).setProvider(providedHost);
+ Scope scope = getScope();
scope.publishInterface(providedBoolean, true);
scope.publishInterface(providedHost, "host.name.org");
-
+
Object obj = classConfig.create(scope);
assertTrue(obj instanceof X7);
- X7 x7 = (X7)obj;
+
+ X7 x7 = (X7) obj;
assertNotNull(x7.getBoolean());
assertTrue(x7.getBoolean());
assertNull(x7.getHost());
assertNull(x7.getPort());
classConfig.inject(scope, obj);
-
+
assertEquals("host.name.org", x7.getHost());
assertEquals(10, x7.getPort().intValue());
}
-
}