| 
01 import org.apache.cactus.ServletTestCase;02 import org.apache.cactus.WebResponse;
 03
 04 import javax.servlet.RequestDispatcher;
 05
 06 public class ServletToTestJSP extends ServletTestCase {
 07
 08     public ServletToTestJSP(String methodName) {
 09         super(methodName);
 10     }
 11
 12     String startTest = "testjsp";
 13     String[] endTest;
 14
 15     /* Do tejto metódy môžete umiestniť logiku,
 16     zodpovednú za získanie údajov pre JSP. Môžete využiť
 17     napríklad JDBC alebo EJB. Pre názornosť to urobíme
 18     veľmi jednoducho, nastavíme atribút objektu request*/
 19     public void testForwardingToJsp() throws Exception {
 20         this.request.setAttribute("test_string", startTest);
 21         RequestDispatcher rd = this.config.getServletContext().getRequestDispatcher("/convert.jsp");
 22         rd.forward(this.request, this.response);
 23     }
 24
 25     /* V tejto metóde overíme, či odpoveď obsahuje
 26     údaje, ktoré sme očakávali.*/
 27     public void endForwardingToJsp(WebResponse webResponse) {
 28         /* metóda getTextAsArray() vráti odpoveď
 29         (okrem hlavičky) ako pole reťazcov; každý
 30         záznam je jeden riadok z výstupného prúdu */
 31         endTest = webResponse.getTextAsArray();
 32         // náš porovnávaný reťazec má index 2
 33         assertNotNull(endTest[2]);
 34         assertEquals(startTest.toUpperCase(),endTest[2]);
 35     }
 36 }
 |