Search in sources :

Example 56 with Url

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

the class HttpsMapperTest method mapHandler.

@Test
void mapHandler() {
    IRequestMapper delegate = mock(IRequestMapper.class);
    HttpsMapper mapper = new HttpsMapper(delegate, new HttpsConfig());
    ServletWebRequest request = mock(ServletWebRequest.class);
    HttpServletRequest req = mock(HttpServletRequest.class);
    when(request.getContainerRequest()).thenReturn(req);
    // rendering url to https page on http, set protocol
    IRequestHandler handler = new RenderPageRequestHandler(new PageProvider(SecurePage.class));
    Url url = new Url();
    when(delegate.mapHandler(handler)).thenReturn(url);
    when(req.getScheme()).thenReturn("http");
    mapper.mapHandler(handler, request);
    assertEquals("https", url.getProtocol());
    assertEquals(Integer.valueOf(443), url.getPort());
    // render url to http page on http, ignore protocol
    handler = new RenderPageRequestHandler(new PageProvider(InsecurePage.class));
    url = new Url();
    reset(delegate);
    when(delegate.mapHandler(handler)).thenReturn(url);
    when(req.getScheme()).thenReturn("http");
    mapper.mapHandler(handler, request);
    assertNull(url.getProtocol());
    // render url to http page on https, set protocol
    handler = new RenderPageRequestHandler(new PageProvider(InsecurePage.class));
    url = new Url();
    reset(delegate);
    when(delegate.mapHandler(handler)).thenReturn(url);
    when(req.getScheme()).thenReturn("https");
    mapper.mapHandler(handler, request);
    assertEquals("http", url.getProtocol());
    assertEquals(Integer.valueOf(80), url.getPort());
}
Also used : HttpServletRequest(jakarta.servlet.http.HttpServletRequest) IRequestHandler(org.apache.wicket.request.IRequestHandler) RenderPageRequestHandler(org.apache.wicket.core.request.handler.RenderPageRequestHandler) PageProvider(org.apache.wicket.core.request.handler.PageProvider) IRequestMapper(org.apache.wicket.request.IRequestMapper) ServletWebRequest(org.apache.wicket.protocol.http.servlet.ServletWebRequest) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 57 with Url

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

the class ResourceUtilTest method decodeResourceReferenceAttributesWithUrl.

@Test
void decodeResourceReferenceAttributesWithUrl() throws Exception {
    Url url = Url.parse("www.funny.url/?param1=value1");
    UrlAttributes attributes = ResourceUtil.decodeResourceReferenceAttributes(url);
    assertEquals(new UrlAttributes(null, null, null), attributes);
    url = Url.parse("www.funny.url/?de_DE");
    attributes = ResourceUtil.decodeResourceReferenceAttributes(url);
    assertEquals(Locale.GERMANY, attributes.getLocale());
    assertNull(attributes.getStyle());
    assertNull(attributes.getVariation());
    url = Url.parse("www.funny.url/?-style");
    attributes = ResourceUtil.decodeResourceReferenceAttributes(url);
    assertNull(attributes.getLocale());
    assertEquals("style", attributes.getStyle());
    assertNull(attributes.getVariation());
}
Also used : UrlAttributes(org.apache.wicket.request.resource.ResourceReference.UrlAttributes) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 58 with Url

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

the class ServletWebRequestTest method parseForwardAttributes.

/**
 * https://issues.apache.org/jira/browse/WICKET-4138
 *
 * Relative Urls should be calculated against 'javax.servlet.forward.request_uri'
 */
@Test
void parseForwardAttributes() {
    MockHttpServletRequest httpRequest = new MockHttpServletRequest(null, null, null);
    httpRequest.setURL(httpRequest.getContextPath() + "/request/Uri");
    String forwardedURI = httpRequest.getContextPath() + "/some/forwarded/url";
    httpRequest.setAttribute("jakarta.servlet.forward.request_uri", forwardedURI);
    ServletWebRequest forwardWebRequest = new ServletWebRequest(httpRequest, "");
    Url forwardClientUrl = forwardWebRequest.getClientUrl();
    assertEquals("some/forwarded/url", forwardClientUrl.toString());
}
Also used : MockHttpServletRequest(org.apache.wicket.protocol.http.mock.MockHttpServletRequest) Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 59 with Url

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

the class MockHttpServletRequestTest method setAbsoluteUrlWithHost.

@Test
void setAbsoluteUrlWithHost() {
    MockHttpServletRequest request = tester.getRequest();
    assertEquals("http", request.getScheme());
    assertEquals("localhost", request.getServerName());
    assertEquals(80, request.getServerPort());
    request.setURL("https://myhost.mydomain.org:1234/foo/bar/baz.html?a=123&b=456");
    assertEquals("https", request.getScheme());
    assertEquals("myhost.mydomain.org", request.getServerName());
    assertEquals(1234, request.getServerPort());
    Url url = request.getUrl();
    assertEquals("https", url.getProtocol());
    assertEquals("myhost.mydomain.org", url.getHost());
    assertEquals(Integer.valueOf(1234), url.getPort());
    assertEquals("/foo/bar/baz.html", url.getPath());
    assertEquals("a=123&b=456", url.getQueryString());
    String pathInfo = request.getPathInfo();
    assertEquals("/foo/bar/baz.html", pathInfo);
}
Also used : Url(org.apache.wicket.request.Url) Test(org.junit.jupiter.api.Test)

Example 60 with Url

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

the class MockHttpServletRequestTest method testNoQueryString_returnsNull.

/**
 * WICKET-4664 - no query string returns null as per HttpServletRequest
 */
@Test
void testNoQueryString_returnsNull() {
    MockHttpServletRequest request = tester.getRequest();
    request.setURL("my/servlet/without/query/param");
    Url url = request.getUrl();
    assertNull(url.getQueryString());
}
Also used : 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