KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > oddjob > values > types > SystemTypeTest


1 /*
2  * (c) Rob Gordon 2005
3  */

4 package org.oddjob.values.types;
5
6 import java.io.ByteArrayInputStream JavaDoc;
7
8 import junit.framework.TestCase;
9
10 import org.apache.commons.beanutils.DynaBean;
11 import org.apache.log4j.Logger;
12 import org.oddjob.Oddjob;
13 import org.oddjob.arooa.reflect.BeanUtilsHelper;
14 import org.oddjob.arooa.reflect.IntrospectionHelper;
15
16 /**
17  *
18  */

19 public class SystemTypeTest extends TestCase {
20     private static final Logger logger = Logger.getLogger(SystemTypeTest.class);
21     
22     public void test1() {
23         String JavaDoc xml=
24             "<oddjob><variables id='v'><system/></variables></oddjob>";
25         
26         Oddjob oj = new Oddjob();
27         oj.setInput(new ByteArrayInputStream JavaDoc(xml.getBytes()));
28         oj.run();
29         DynaBean b = (DynaBean) oj.lookup("v");
30         String JavaDoc result = (String JavaDoc) IntrospectionHelper.valueFor(
31                 BeanUtilsHelper.getProperty(b, "java.version"));
32         logger.debug(result);
33         assertEquals(System.getProperty("java.version"), result);
34     }
35     
36     public void test2() {
37         String JavaDoc xml=
38             "<oddjob><variables id='v'><system name='java.version'/></variables></oddjob>";
39         
40         Oddjob oj = new Oddjob();
41         oj.setInput(new ByteArrayInputStream JavaDoc(xml.getBytes()));
42         oj.run();
43         DynaBean b = (DynaBean) oj.lookup("v");
44         Object JavaDoc p = BeanUtilsHelper.getProperty(b, "java.version");
45         logger.debug(p);
46         String JavaDoc result = (String JavaDoc) IntrospectionHelper.valueFor(p);
47         logger.debug(result);
48         assertEquals(System.getProperty("java.version"), result);
49     }
50
51     public void test3() {
52         String JavaDoc xml=
53             "<oddjob><variables id='v'><system name='fred.fruit' value='apple'/></variables></oddjob>";
54         
55         Oddjob oj = new Oddjob();
56         oj.setInput(new ByteArrayInputStream JavaDoc(xml.getBytes()));
57         oj.run();
58         logger.debug(System.getProperty("fred.fruit"));
59         assertEquals("apple", System.getProperty("fred.fruit"));
60     }
61     
62     public void test4() {
63         // attributes other way round
64
String JavaDoc xml=
65             "<oddjob><variables id='v'><system value='apple' name='fred.fruit'/></variables></oddjob>";
66         
67         Oddjob oj = new Oddjob();
68         oj.setInput(new ByteArrayInputStream JavaDoc(xml.getBytes()));
69         oj.run();
70         logger.debug(System.getProperty("fred.fruit"));
71         assertEquals("apple", System.getProperty("fred.fruit"));
72     }
73     
74     public void test5() {
75         String JavaDoc xml=
76             "<oddjob><variables id='v'>" +
77             "<system name='fred.fruit' value='apple'/>" +
78             "<system name='willma.fruit' value='${v.fred.fruit}s and pairs'/>" +
79             "</variables></oddjob>";
80         
81         Oddjob oj = new Oddjob();
82         oj.setInput(new ByteArrayInputStream JavaDoc(xml.getBytes()));
83         oj.run();
84         
85         logger.debug(System.getProperty("willma.fruit"));
86         assertEquals("apples and pairs", System.getProperty("willma.fruit"));
87     }
88 }
89
Popular Tags