Cactus test cases allow to assert the results of the returned server
output stream in an endXXX()
method (where XXX
is the name of your test case).
Cactus proposes 2 ways of writing your endXXX()
methods,
endXXX()
method. Method 1 is a class provided by Cactus.
Depending on your need you can choose, on a per test case basis, the
method you want to use.
The signature of an endXXX()
method is always:
public void endXXX(WebResponse theResponse) { [...] }
The WebResponse
object is passed by the Cactus framework
to your endXXX()
method. What changes between the 2
methods described above is the class of the WebResponse
object that is passed:
org.apache.cactus.WebResponse
for Method 1,
com.meterware.httpunit.WebResponse
for Method 2
(HttpUnit)
public void endXXX(org.apache.cactus.WebResponse theResponse) { // Get the returned cookies Hashtable cookies = theResponse.getCookies(); // Get the returned content as a string String content = theResponse.getText(); // Do some asserts assertEquals(content, "<html><body><h1>Hello world!</h1></body></html>"); [...] }
WebResponse
object, see the associated Javadoc.
public void endXXX(com.meterware.httpunit.WebResponse theResponse) { WebTable table = theResponse.getTables()[0]; assertEquals("rows", 4, table.getRowCount()); assertEquals("columns", 3, table.getColumnCount()); assertEquals("links", 1, table.getTableCell(0, 2).getLinks().length); [...] }
WebResponse
object, see the HttpUnit
documentation.