I believe there is indeed a problem with continueTo...
I have talked with Johan about it a long time ago, i don't recall what
the problem was but ever since i am using the following work around to
test continueTo.... behavior.
// continueToOriginaldestination does not work if there is no url
available, so we need to fake one here(testing only hack)
mock.setupRequestAndResponse();
WebRequestCycle cycle = mock.createRequestCycle();
String url1 = cycle.urlFor(new
BookmarkablePageRequestTarget(YOUR_PAGE_HERE.class, null)).toString();
mock.getServletRequest().setURL("/GeneralTest$1/GeneralTest$1/" + url1);
mock.processRequestCycle();
mock is the WicketTester.
GeneralTest$1 from the url is the classname of your application
without the package. (in my case it is an anonymous inner class hence
the $1) Note that this classname appears twice in the url.
Maurice
On Jan 18, 2008 12:24 PM, Lauri Piispanen - Conmio Ltd
<[EMAIL PROTECTED]> wrote:
> Hi all,
>
> I'm having problems trying to test interception pages with WicketTester
> in Wicket 1.3. For some reason my application homepage is used instead
> of the one that threw the RestartResponseAtInterceptPageException. I
> have the same code running fine in the servlet environment, so I think
> the issue is most likely with WicketTester. Either that, or it's
> actually due to my erroneous use of it. Here's my test case:
>
> public void testContinueToOriginalDestination() throws Exception {
> tester.startPage(TargetPage.class);
> tester.assertRenderedPage(InterceptPage.class);
>
> tester.submitForm("form");
> tester.assertRenderedPage(TargetPage.class); // This line fails,
> as the rendered page is actually the application home page.
> }
>
> TargetPage is set to throw a RestartResponseAtInterceptException at
> first request:
>
> private boolean firstTime = true;
>
> public TargetPage() {
> if (firstTime) {
> firstTime = false;
> throw new
> RestartResponseAtInterceptPageException(InterceptPage.class);
> }
> }
>
> My intercept page simply has a form with a
> continueToOriginalDestination() when submit:
>
> public InterceptPage() {
> add(new Form("form") {
> @Override
> protected void onSubmit() {
> continueToOriginalDestination();
> }
>
> });
> }
>
> Can anyone help me with this, or have I encountered some bug with the
> tester? I have test cases that reproduce the issue.
>
> Sincerely,
>
> --
>
> Lauri Piispanen
>
> +358 45 630 2546
> Senior Product Architect
> Conmio Ltd
> http://www.conmio.com
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]