1 package org.seasar.cubby.tags; 2 3 import java.util.HashMap; 4 5 import javax.servlet.jsp.PageContext; 6 7 import org.jdom.Element; 8 import org.seasar.framework.util.StringUtil; 9 10 public class TextareaTagTest extends JspTagTestCase { 11 12 TextareaTag tag; 13 14 @Override 15 protected void setUp() throws Exception { 16 super.setUp(); 17 tag = new TextareaTag(); 18 setupSimpleTag(tag); 19 context.setAttribute("fieldErrors", new HashMap<String, String>(), PageContext.REQUEST_SCOPE); 20 jspBody.setBody("Dummy Body Text"); 21 } 22 23 public void testDoTag1() throws Exception { 24 tag.setDynamicAttribute(null, "name", "content"); 25 tag.setDynamicAttribute(null, "value", "value1"); 26 tag.setDynamicAttribute(null, "id", "content"); 27 tag.doTag(); 28 Element element = getResultAsElementFromContext(); 29 String message = "フォームオブジェクトが空でvalueが指定されている場合"; 30 assertEquals(message, "value1", element.getValue()); 31 assertEquals(message, 2, element.getAttributes().size()); 32 assertEquals(message, "content", element.getAttributeValue("id")); 33 assertEquals(message, "content", element.getAttributeValue("name")); 34 } 35 36 public void testDoTag2() throws Exception { 37 FormDto form = new FormDto(); 38 form.setStringField("value1"); 39 context.setAttribute("__form", form, PageContext.REQUEST_SCOPE); 40 tag.setDynamicAttribute(null, "name", "stringField"); 41 tag.doTag(); 42 Element element = getResultAsElementFromContext(); 43 String message = "フォームオブジェクトとname指定の場合"; 44 assertEquals(message, "value1", element.getValue()); 45 assertEquals(message, 1, element.getAttributes().size()); 46 assertEquals(message, "stringField", element.getAttributeValue("name")); 47 } 48 49 public void testDoTag3() throws Exception { 50 FormDto form = new FormDto(); 51 form.setStringField("value1"); 52 tag.setDynamicAttribute(null, "name", "stringField"); 53 tag.doTag(); 54 Element element = getResultAsElementFromContext(); 55 String message = "フォームオブジェクトが空でとnameが指定されている場合"; 56 assertTrue(message, StringUtil.isEmpty(element.getValue())); 57 assertEquals(message, 1, element.getAttributes().size()); 58 assertEquals(message, "stringField", element.getAttributeValue("name")); 59 } 60 61 }