KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > oddjob > designer > elements > MultiLineTextDETest


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

4 package org.oddjob.designer.elements;
5
6 import junit.framework.TestCase;
7
8 import org.apache.log4j.Logger;
9 import org.oddjob.arooa.reflect.IntrospectionHelper;
10 import org.oddjob.designer.arooa.DesignIH;
11 import org.oddjob.designer.arooa.ElementWrapper;
12 import org.oddjob.designer.model.DesignElement;
13 import org.xml.sax.Attributes JavaDoc;
14
15 /**
16  *
17  */

18 public class MultiLineTextDETest extends TestCase {
19     private static final Logger logger = Logger.getLogger(MultiLineTextDETest.class);
20     
21     public void test1() {
22         MultiLineTextDE mlt = new MultiLineTextDE();
23         mlt.setValue("The quick brown\nfox");
24         
25         assertNull(mlt.getValue());
26         assertNull(mlt.attribute());
27         assertNotNull(mlt.text());
28     }
29     
30     public void test2() {
31         MultiLineTextDE mlt = new MultiLineTextDE();
32         mlt.setValue("The quick brown fox");
33         
34         assertNull(mlt.getValue());
35         assertNotNull(mlt.attribute());
36         assertNull(mlt.text());
37     }
38     
39     public static class MyDC {
40         MultiLineTextDE mlt = new MultiLineTextDE();
41         public MultiLineTextDE getMlt() {
42             return mlt;
43         }
44         public void setMlt(MultiLineTextDE v) {
45             this.mlt = v;
46         }
47     }
48     
49     
50     public void testInlineXML() {
51         MyDC dc = new MyDC();
52         dc.mlt.attribute("The quick\nbrown fox");
53         assertNull(dc.getMlt().attribute());
54         DesignIH dih = DesignIH.getHelper(dc.getClass());
55
56         // 0 attributes
57
Attributes JavaDoc attrs = dih.attributes(dc);
58         assertEquals(0, attrs.getLength());
59
60         // 1 element <text>.
61
ElementWrapper[] elements = dih.elements(dc);
62         assertEquals(1, elements.length);
63         assertEquals("mlt", elements[0].getName());
64         
65         
66         // element has only inline text
67
Object JavaDoc element = elements[0].getElement();
68         DesignIH dih2 = DesignIH.getHelper(element.getClass());
69         String JavaDoc text = dih2.text(element);
70         assertNotNull(text);
71         assertEquals(0, dih2.attributes(element).getLength());
72         
73         // text has data
74
assertTrue(dih2.hasDetailData((DesignElement) element));
75
76     }
77     
78     public void testAttributeXML() {
79         MyDC dc = new MyDC();
80         dc.mlt.attribute("Hello");
81         assertNotNull(dc.getMlt().attribute());
82         DesignIH dih = DesignIH.getHelper(dc.getClass());
83
84         // 1 attributes
85
Attributes JavaDoc attrs = dih.attributes(dc);
86         assertEquals(1, attrs.getLength());
87         
88         // 0 elements
89
ElementWrapper[] elements = dih.elements(dc);
90         assertEquals(0, elements.length);
91         
92         
93     }
94     
95     public void testAddText() {
96         MultiLineTextDE mlt = new MultiLineTextDE();
97         IntrospectionHelper ih = IntrospectionHelper.getHelper(mlt.getClass());
98         ih.addText(mlt, "The quick brown fox");
99         assertNull(mlt.text());
100         assertNotNull(mlt.attribute());
101     }
102     
103 }
104
Popular Tags