KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > oddjob > arooa > ArooaBuildTest


1 package org.oddjob.arooa;
2
3 import java.util.HashMap JavaDoc;
4 import java.util.Map JavaDoc;
5
6 import junit.framework.TestCase;
7
8 import org.oddjob.arooa.registry.ComponentRegistry;
9 import org.oddjob.arooa.test.A;
10
11
12 /**
13  * Tests the Arooa framework can build something.
14  */

15 public class ArooaBuildTest extends TestCase {
16     
17     ObjectFactory factory;
18     
19     public void setUp() {
20         SimpleObjectFactory factory = new SimpleObjectFactory();
21         factory.set("a", "org.oddjob.arooa.test.A");
22         factory.set("b", "org.oddjob.arooa.test.B");
23         this.factory = factory;
24     }
25     
26     public void testBuild() throws ArooaException {
27
28         RootComponent root = new RootComponent();
29         
30         ArooaFactory af = new ArooaFactory();
31         af.setComponentFactory(factory);
32         ComponentRegistry ids = new ComponentRegistry();
33         Map JavaDoc props = new HashMap JavaDoc();
34         props.put("foo", "Hello World");
35         props.put("ba", "Goodbye World");
36
37         ids.register("my", props);
38         
39         af.setComponentRegistry(ids);
40         af.setObjectToConfigure(root);
41         af.build(getClass().getResourceAsStream("arooa-build-test.xml"));
42
43         A a = root.a;
44         assertTrue(a.getFoo().equals("Hello World"));
45         assertTrue(a.getB().getBa().equals("Goodbye World"));
46     }
47     
48     public static class RootComponent {
49         A a;
50         RuntimeConfiguration rtc;
51         public void addComponent(A a) {
52             this.a = a;
53         }
54         public void setRuntimeConfigurable(RuntimeConfiguration rtc) {
55             this.rtc = rtc;
56         }
57     };
58
59 }
60
Popular Tags