Hi, I currently have an application reading a cookie in my session. All
of my unit tests where the pattern is: Create page -> submit form ->
redirect to new page fails to read this cookie after the redirect to new
page.
The cookie is added both to the response and request before each new
test (WicketTester gets recreated):
tester.getWicketResponse().addCookie(cookie);
tester.getServletRequest().setCookies(new Cookie[]{cookie});
This works fine during first page rendering and form submission. But
after the form has been submitted and the redirect to new page takes
place the cookie does not exist in the new request.
Since I'm a bit unsure if this is the wanted behavior for WicketTester
or not I'm posting this to all users out there.
In my particular use case I would like the cookie to be persisted
between original request and new request since that's how it is working
in the real application.
Codewise (with Wicket 1.4.15):
In MockWebApplication.postProcessRequestCycle:
if (httpResponse.isRedirect())
{
lastRenderedPage = generateLastRenderedPage(cycle);
MockHttpServletRequest newHttpRequest = new
MockHttpServletRequest(application, servletSession,
application.getServletContext());
...
}
The call to new MockHttpServletRequest will clear all cookies set during
initialize() and thus my cookie will not be set in the redirect request.
Any ideas on how to tackle this? For me I'd like the WicketTester to
copy any existing cookies from the original request to the redirect
request. I'd also be happy if there's another place in the code where I
can set the cookie to have it available during the redirect request
phase as well.
I also found an old bug (WICKET-1886) that felt like the same issue when
I read it.
Regards
Robert
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org