KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > tests > jfun > yan > ComponentTestCase


1 /*
2  * Created on Mar 4, 2005
3  *
4  * Author Ben Yu
5  * ZBS
6  */

7 package tests.jfun.yan;
8
9 import java.util.HashMap JavaDoc;
10
11 import tests.jfun.models.CompositeBean;
12 import tests.jfun.models.MyBean;
13 import tests.jfun.models.Named;
14
15 import jfun.yan.Components;
16 import jfun.yan.containers.DefaultContainer;
17 import junit.framework.TestCase;
18 import junit.framework.TestSuite;
19
20 /**
21  * Zephyr Business Solution
22  *
23  * @author Ben Yu
24  *
25  */

26 public class ComponentTestCase extends TestCase {
27   public static void main(String JavaDoc[] args){
28     tests.jfun.yan.Utils.runTest(suite());
29   }
30   private static TestSuite suite(){
31     return new TestSuite(ComponentTestCase.class);
32   }
33   private static void verify(DefaultContainer cc){
34     final CompositeBean cb =
35       (CompositeBean)cc.getInstanceOfType(CompositeBean.class);
36     assertEquals("qian", cb.getName());
37     assertEquals(2, cb.getBeans().length);
38     assertEquals(true, ((tests.jfun.models.MyBean)cb.getBean()).is1());
39   }
40   public void test1(){
41     final DefaultContainer cc = new DefaultContainer();
42     final tests.jfun.models.MyBean[] arr = new tests.jfun.models.MyBean[2];
43     cc.registerComponent(CompositeBean.class,
44         Components.ctor(CompositeBean.class,
45             new Class JavaDoc[]{Named.class, tests.jfun.models.MyBean[].class, String JavaDoc.class})
46         .withArgument(1, Components.value(arr))
47         .singleton());
48         
49         
50     /*cc.registerConstructor(Named.class, MyBean.class,
51         new Class[]{int[].class, short.class, String.class, boolean.class,
52         java.util.Map.class});*/

53     cc.registerComponent(Named.class,
54         Components.static_method(MyBean.class, "instance")
55         .withArgument(1, Components.value(new Short JavaDoc((short)33)))
56         .withArgument(2, Components.value("jack"))
57         .singleton());
58     cc.registerValue(int[].class, new int[]{1,2,3});
59     /*
60     cc.registerParameter(Named.class, 1,
61         ComponentCreators.value(new Short((short)33)));*/

62     //cc.registerParameter(Named.class, 2, ComponentCreators.value("jack"));
63
cc.registerValue(boolean.class, Boolean.valueOf(true));
64     final HashMap JavaDoc hmap = new HashMap JavaDoc();
65     hmap.put("firstname", "Jack");
66     hmap.put("lastname", "Nicolson");
67     cc.registerValue(java.util.Map JavaDoc.class, hmap);
68     
69     //cc.registerParameter(CompositeBean.class, 1, ComponentCreators.value(arr));
70
cc.registerValue(String JavaDoc.class, "qian");
71     verify(cc);
72   }
73
74
75 }
76
Popular Tags