1 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 ; 14 15 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 Attributes attrs = dih.attributes(dc); 58 assertEquals(0, attrs.getLength()); 59 60 ElementWrapper[] elements = dih.elements(dc); 62 assertEquals(1, elements.length); 63 assertEquals("mlt", elements[0].getName()); 64 65 66 Object element = elements[0].getElement(); 68 DesignIH dih2 = DesignIH.getHelper(element.getClass()); 69 String text = dih2.text(element); 70 assertNotNull(text); 71 assertEquals(0, dih2.attributes(element).getLength()); 72 73 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 Attributes attrs = dih.attributes(dc); 86 assertEquals(1, attrs.getLength()); 87 88 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 |