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]

Reply via email to