1 37 package net.sourceforge.cruisecontrol.taglib; 38 39 import java.io.File ; 40 import java.io.FileWriter ; 41 42 import junit.framework.TestCase; 43 import net.sourceforge.cruisecontrol.mock.MockPageContext; 44 import net.sourceforge.cruisecontrol.mock.MockServletRequest; 45 46 50 public class CruiseControlTagSupportTest extends TestCase { 51 private CruiseControlTagSupport tag; 52 private MockServletRequest request; 53 54 private String logName1; 55 private String logName2; 56 private String logName3; 57 private File logDir; 58 private File log1; 59 private File log2; 60 private File log3; 61 62 public void setUp() { 63 tag = new CruiseControlTagSupport(); 64 MockPageContext pageContext = new MockPageContext(); 65 tag.setPageContext(pageContext); 66 request = new MockServletRequest("context", "servlet"); 67 pageContext.setHttpServletRequest(request); 68 69 logDir = new File ("testresults/"); 70 if (!logDir.exists()) { 71 assertTrue("Failed to create test result dir", logDir.mkdir()); 72 } 73 logName1 = "log1"; 74 logName2 = "log20040905010203Lsuccessful-build-file.1"; 75 logName3 = "log20051021142446"; 76 log1 = new File (logDir, logName1 + ".xml"); 77 log2 = new File (logDir, logName2 + ".xml"); 78 log3 = new File (logDir, logName3 + ".xml.gz"); 79 } 80 81 public void tearDown() { 82 tag = null; 83 request = null; 84 85 log1.delete(); 86 log2.delete(); 87 log3.delete(); 88 logDir.delete(); 89 90 log1 = null; 91 log2 = null; 92 log3 = null; 93 logDir = null; 94 } 95 96 public void testCreateUrl() { 97 assertEquals("/context/servlet?param=value", tag.createUrl("param", "value")); 98 } 99 100 public void testCreateUrlReplacingParam() { 101 request.addParameter("param", "differentValue"); 102 assertEquals("/context/servlet?param=value", tag.createUrl("param", "value")); 103 } 104 105 public void testCreateUrlPreservingParam() { 106 request.addParameter("otherParam", "otherValue"); 107 assertEquals("/context/servlet?otherParam=otherValue¶m=value", tag.createUrl("param", "value")); 108 } 109 110 public void testCreateUrlPreservingAndReplacingParams() { 111 request.addParameter("otherParam", "otherValue"); 112 request.addParameter("param", "differentValue"); 113 assertEquals("/context/servlet?otherParam=otherValue¶m=value", tag.createUrl("param", "value")); 114 } 115 116 public void testGetXmlFile() throws Exception { 117 writeFile(log2, ""); 118 writeFile(log3, ""); 119 120 assertEquals(tag.getXMLFile(logDir, "").getName(), logName3); 121 assertEquals(tag.getXMLFile(logDir, logName2).getName(), logName2); 122 } 123 124 private void writeFile(File file, String body) throws Exception { 125 FileWriter writer = new FileWriter (file); 126 writer.write(body); 127 writer.close(); 128 } 129 } 130 | Popular Tags |