Hello,
we are wondering about a valid test setup - perhaps somebody is able to help us
with it. Our approaches to write a test failed because our WebApplication's
newSession() seem to be called whenever we create a WicketTester and before we
are able to set any request parameters.
Our setting is as follows: The application is started by a link that contains
an HTTP GET parameter. We have extended SwarmWebApplication and implemented its
newSession() so that the request's parameters are evaluated. The return value
of this method is our custom Session that stores the initial parameter.
Now we have a test like this:
----------------
Map<String, String[]> params = new HashMap<String, String[]>();
params.put("id", "1234567");
WicketTester wicketTester = new WicketTester(ourApplication); // seems to call
newSession() already
wicketTester.setParametersForNextRequest(params);
wicketTester.startPage(HomePage.class);
----------------
And the application code looks like this:
----------------
public class OurWebApplication extends SwarmWebApplication {
[...]
@Override
public NewsletterSession newSession(Request request, Response response) {
String id = request.getParameter("id"); // is null in test setting,
otherwise it works
[...]
}
}
----------------
Any clue on how to pass the initial request parameters to WicketTester? The
productive code seems to work (checked that with some logging output), but we'd
like to create a valid test case.
Your advice would be very much appreciated. We are probably not aware of some
pitfalls in WicketTester and how to deal with them.
Cheers,
Björn and Stefan
--
BRANDAD Systems AG
Gebhardtstraße 5
90762 Fürth
Fon +49 (0) 911 756658 - 0
Fax +49 (0) 911 756658 - 88
www.brandad-systems.de
Vorstand: Joachim Stelzer
Vorsitzender des Aufsichtsrats: Dr. Ottheinz Jung-Senssfelder
Registergericht Fürth, Handelsregister-Nummer: HRB 11435
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]