Search in sources :

Example 81 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PackageMapperTest method decode1.

/**
 */
@Test
void decode1() {
    Url url = Url.parse(MOUNT_PATH + '/' + PAGE_CLASS_NAME);
    IRequestHandler handler = encoder.mapRequest(getRequest(url));
    assertThat(handler).isInstanceOf(RenderPageRequestHandler.class);
    IRequestablePage page = ((RenderPageRequestHandler) handler).getPage();
    assertEquals(PAGE_CLASS_NAME, page.getClass().getSimpleName());
    assertEquals(0, page.getPageParameters().getIndexedCount());
    assertTrue(page.getPageParameters().getNamedKeys().isEmpty());
}
Also used : IRequestHandler(org.apache.wicket.request.IRequestHandler) RenderPageRequestHandler(org.apache.wicket.core.request.handler.RenderPageRequestHandler) IRequestablePage(org.apache.wicket.request.component.IRequestablePage) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 82 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PackageMapperTest method decode4.

/**
 * The tests resolves pages by id as if they were existed in the page store. These pages have no
 * page parameters (i.e. page.getPageParameters() == null).
 *
 * Since Wicket 7.0.0 (WICKET-4441) if a new request to hybrid url (a url with both mount path
 * and pageId) has different page parameters than the resolved page then a new page instance
 * with the new parameters is created. This way if a user manipulates manually the product id in
 * url like: /mount/path/Products/23?3 to /mount/path/Products/24?3 then Wicket will create a
 * new page that will show product=24
 */
@Test
void decode4() {
    Url url = Url.parse(MOUNT_PATH + '/' + PAGE_CLASS_NAME + "/i1/i2?15&a=b&b=c");
    IRequestHandler handler = encoder.mapRequest(getRequest(url));
    assertThat(handler).isInstanceOf(RenderPageRequestHandler.class);
    RenderPageRequestHandler h = (RenderPageRequestHandler) handler;
    ((PageProvider) h.getPageProvider()).setPageSource(context);
    IRequestablePage page = h.getPage();
    checkPage(page, 1);
    PageParameters p = page.getPageParameters();
    assertEquals(2, p.getIndexedCount());
    assertEquals(2, p.getNamedKeys().size());
}
Also used : IRequestHandler(org.apache.wicket.request.IRequestHandler) RenderPageRequestHandler(org.apache.wicket.core.request.handler.RenderPageRequestHandler) PageProvider(org.apache.wicket.core.request.handler.PageProvider) IPageProvider(org.apache.wicket.core.request.handler.IPageProvider) IRequestablePage(org.apache.wicket.request.component.IRequestablePage) PageParameters(org.apache.wicket.request.mapper.parameter.PageParameters) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 83 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PackageMapperTest method encode1.

/**
 */
@Test
void encode1() {
    PageProvider provider = new PageProvider(MockPage.class, new PageParameters());
    provider.setPageSource(context);
    IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
    Url url = encoder.mapHandler(handler);
    assertEquals(MOUNT_PATH + '/' + PAGE_CLASS_NAME, url.toString());
}
Also used : IRequestHandler(org.apache.wicket.request.IRequestHandler) PageProvider(org.apache.wicket.core.request.handler.PageProvider) IPageProvider(org.apache.wicket.core.request.handler.IPageProvider) BookmarkablePageRequestHandler(org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler) PageParameters(org.apache.wicket.request.mapper.parameter.PageParameters) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 84 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PackageMapperTest method decode7.

/**
 */
@Test
void decode7() {
    Url url = Url.parse(MOUNT_PATH + '/' + PAGE_CLASS_NAME + "?15-.4-foo-bar");
    IRequestHandler handler = encoder.mapRequest(getRequest(url));
    assertThat(handler).isInstanceOf(ListenerRequestHandler.class);
    ListenerRequestHandler h = (ListenerRequestHandler) handler;
    IRequestablePage page = h.getPage();
    checkPage(page, 15);
    assertEquals("foo:bar", h.getComponent().getPageRelativePath());
    assertEquals((Object) 4, h.getBehaviorIndex());
}
Also used : IRequestHandler(org.apache.wicket.request.IRequestHandler) IRequestablePage(org.apache.wicket.request.component.IRequestablePage) ListenerRequestHandler(org.apache.wicket.core.request.handler.ListenerRequestHandler) BookmarkableListenerRequestHandler(org.apache.wicket.core.request.handler.BookmarkableListenerRequestHandler) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 85 with Url

use of org.apache.wicket.request.Url in project wicket by apache.

the class PackageMapperTest method encode8.

/**
 */
@Test
void encode8() {
    MockPage page = new MockPage(15);
    page.setBookmarkable(true);
    page.setCreatedBookmarkable(true);
    page.setPageStateless(true);
    IPageProvider provider = new PageProvider(page);
    IRequestHandler handler = new RenderPageRequestHandler(provider);
    Url url = encoder.mapHandler(handler);
    assertEquals(MOUNT_PATH + '/' + PAGE_CLASS_NAME, url.toString());
}
Also used : IRequestHandler(org.apache.wicket.request.IRequestHandler) RenderPageRequestHandler(org.apache.wicket.core.request.handler.RenderPageRequestHandler) PageProvider(org.apache.wicket.core.request.handler.PageProvider) IPageProvider(org.apache.wicket.core.request.handler.IPageProvider) IPageProvider(org.apache.wicket.core.request.handler.IPageProvider) MockPage(org.apache.wicket.MockPage) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Aggregations

Url (org.apache.wicket.request.Url)361 Test (org.junit.jupiter.api.Test)220 IRequestHandler (org.apache.wicket.request.IRequestHandler)145 PageParameters (org.apache.wicket.request.mapper.parameter.PageParameters)58 MockWebRequest (org.apache.wicket.mock.MockWebRequest)57 UrlRenderer (org.apache.wicket.request.UrlRenderer)57 RenderPageRequestHandler (org.apache.wicket.core.request.handler.RenderPageRequestHandler)51 IRequestablePage (org.apache.wicket.request.component.IRequestablePage)50 Test (org.junit.Test)46 PageProvider (org.apache.wicket.core.request.handler.PageProvider)40 ResourceReferenceRequestHandler (org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler)35 IPageProvider (org.apache.wicket.core.request.handler.IPageProvider)34 ResourceUrl (org.apache.wicket.request.resource.caching.ResourceUrl)33 BookmarkableListenerRequestHandler (org.apache.wicket.core.request.handler.BookmarkableListenerRequestHandler)27 ListenerRequestHandler (org.apache.wicket.core.request.handler.ListenerRequestHandler)26 Request (org.apache.wicket.request.Request)25 MockPage (org.apache.wicket.MockPage)22 BookmarkablePageRequestHandler (org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler)18 BufferedWebResponse (org.apache.wicket.protocol.http.BufferedWebResponse)16 PageAndComponentProvider (org.apache.wicket.core.request.handler.PageAndComponentProvider)15