1 37 package net.sourceforge.cruisecontrol.taglib; 38 39 import junit.framework.Test; 40 import junit.framework.TestCase; 41 import junit.framework.TestSuite; 42 import net.sourceforge.cruisecontrol.LogFileSetupDecorator; 43 import net.sourceforge.cruisecontrol.mock.MockBodyContent; 44 import net.sourceforge.cruisecontrol.mock.MockPageContext; 45 import net.sourceforge.cruisecontrol.mock.MockServletConfig; 46 import net.sourceforge.cruisecontrol.mock.MockServletRequest; 47 48 import javax.servlet.jsp.JspException ; 49 import javax.servlet.jsp.tagext.BodyTag ; 50 import javax.servlet.jsp.tagext.Tag ; 51 52 56 public class ArtifactsLinkTagTest extends TestCase { 57 58 private ArtifactsLinkTag tag; 59 private MockPageContext pageContext; 60 private MockServletRequest request; 61 62 public static Test suite() { 63 return new LogFileSetupDecorator(new TestSuite(ArtifactsLinkTagTest.class)); 64 } 65 66 protected void setUp() throws Exception { 67 request = new MockServletRequest("context", "servlet"); 68 69 pageContext = new MockPageContext(); 70 pageContext.setHttpServletRequest(request); 71 72 tag = new ArtifactsLinkTag(); 73 tag.setPageContext(pageContext); 74 75 final MockServletConfig servletConfig = (MockServletConfig) pageContext.getServletConfig(); 76 servletConfig.setInitParameter("logDir", LogFileSetupDecorator.LOG_DIR.getAbsolutePath()); 77 } 78 79 protected void tearDown() { 80 tag.release(); 81 tag = null; 82 pageContext.release(); 83 pageContext = null; 84 } 85 86 public void testDoStartTag() throws JspException { 87 assertEquals(BodyTag.EVAL_BODY_TAG, tag.doStartTag()); 88 } 89 90 public void testDoAfterBody() throws JspException { 91 MockBodyContent content = new MockBodyContent(); 92 tag.setBodyContent(content); 93 assertEquals(Tag.SKIP_BODY, tag.doAfterBody()); 94 } 95 96 public void testDoInitBody() throws JspException { 97 request.addParameter("log", "log20030611123100"); 98 tag.doInitBody(); 99 String url = (String ) pageContext.getAttribute(ArtifactsLinkTag.URL_ATTRIBUTE); 100 assertEquals("artifacts/20030611123100", url); 101 request.removeParameter("log"); 102 } 103 104 } 105 | Popular Tags |