You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2012/03/07 09:39:04 UTC
[15/19] WICKET-4439 Move classes around so that there are no two
packages with the same name in different modules
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
new file mode 100644
index 0000000..00c8499
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java
@@ -0,0 +1,536 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.core.request.mapper;
+
+import org.apache.wicket.MockPage;
+import org.apache.wicket.core.request.handler.BookmarkableListenerInterfaceRequestHandler;
+import org.apache.wicket.markup.html.link.ILinkListener;
+import org.apache.wicket.request.IRequestHandler;
+import org.apache.wicket.request.Url;
+import org.apache.wicket.request.component.IRequestableComponent;
+import org.apache.wicket.request.component.IRequestablePage;
+import org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler;
+import org.apache.wicket.core.request.handler.IPageProvider;
+import org.apache.wicket.core.request.handler.IPageRequestHandler;
+import org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler;
+import org.apache.wicket.core.request.handler.PageAndComponentProvider;
+import org.apache.wicket.core.request.handler.PageProvider;
+import org.apache.wicket.core.request.handler.RenderPageRequestHandler;
+import org.apache.wicket.core.request.mapper.PackageMapperTest.OuterPage.InnerPage;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.apache.wicket.util.lang.PackageName;
+import org.junit.Test;
+
+/**
+ * Tests for {@link PackageMapper}
+ */
+public class PackageMapperTest extends AbstractMapperTest
+{
+
+ private static final String ALIAS = "alias";
+
+ private final PackageMapper encoder = new PackageMapper(PackageName.forClass(MockPage.class))
+ {
+ @Override
+ protected IMapperContext getContext()
+ {
+ return context;
+ }
+ };
+
+ private static final String PAGE_CLASS_NAME = MockPage.class.getSimpleName();
+
+ private final PackageMapper aliasEncoder = new PackageMapper(
+ PackageName.forClass(MockPage.class))
+ {
+ @Override
+ protected IMapperContext getContext()
+ {
+ return context;
+ }
+
+ @Override
+ protected String transformFromUrl(String classNameAlias)
+ {
+ final String realClassName;
+ if (ALIAS.equals(classNameAlias))
+ {
+ realClassName = PAGE_CLASS_NAME;
+ }
+ else
+ {
+ realClassName = super.transformFromUrl(classNameAlias);
+ }
+ return realClassName;
+ }
+
+ @Override
+ protected String transformForUrl(String className)
+ {
+ final String alias;
+ if (PAGE_CLASS_NAME.equals(className))
+ {
+ alias = ALIAS;
+ }
+ else
+ {
+ alias = super.transformForUrl(className);
+ }
+ return alias;
+ }
+ };
+
+ /**
+ *
+ */
+ @Test
+ public void decode1()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME);
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ assertEquals(PAGE_CLASS_NAME, page.getClass().getSimpleName());
+ assertEquals(0, page.getPageParameters().getIndexedCount());
+ assertTrue(page.getPageParameters().getNamedKeys().isEmpty());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode2()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "/indexed1?a=b&b=c");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ assertEquals(PAGE_CLASS_NAME, page.getClass().getSimpleName());
+
+ PageParameters p = page.getPageParameters();
+ assertEquals(1, p.getIndexedCount());
+ assertEquals("indexed1", p.get(0).toString());
+
+ assertEquals(2, p.getNamedKeys().size());
+ assertEquals("b", p.get("a").toString());
+ assertEquals("c", p.get("b").toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode3()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "?15");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ checkPage(page, 15);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode4()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "/i1/i2?15&a=b&b=c");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ checkPage(page, 15);
+
+ PageParameters p = page.getPageParameters();
+ assertEquals(0, p.getIndexedCount());
+
+ assertEquals(0, p.getNamedKeys().size());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode5()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "?15-ILinkListener-foo-bar");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+
+ IRequestablePage page = h.getPage();
+ checkPage(page, 15);
+
+ assertEquals(ILinkListener.INTERFACE, h.getListenerInterface());
+ assertEquals("foo:bar", h.getComponent().getPageRelativePath());
+ assertNull(h.getBehaviorIndex());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode6()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "/i1/i2?15-ILinkListener-foo-bar&a=b&b=c");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+
+ IRequestablePage page = h.getPage();
+ checkPage(page, 15);
+
+ assertEquals(ILinkListener.INTERFACE, h.getListenerInterface());
+ assertEquals("foo:bar", h.getComponent().getPageRelativePath());
+
+ PageParameters p = page.getPageParameters();
+ assertEquals(0, p.getIndexedCount());
+
+ assertEquals(0, p.getNamedKeys().size());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode7()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "?15-ILinkListener.4-foo-bar");
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+
+ IRequestablePage page = h.getPage();
+ checkPage(page, 15);
+
+ assertEquals(ILinkListener.INTERFACE, h.getListenerInterface());
+ assertEquals("foo:bar", h.getComponent().getPageRelativePath());
+ assertEquals((Object)4, h.getBehaviorIndex());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode8()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "/i1/i2?15-5.ILinkListener-foo-bar&a=b&b=c");
+
+ context.setNextPageRenderCount(5);
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+
+ IRequestablePage page = h.getPage();
+ assertEquals(page.getRenderCount(), 5);
+ }
+
+ /**
+ *
+ */
+ @Test(expected = StalePageException.class)
+ public void decode9()
+ {
+ Url url = Url.parse(PAGE_CLASS_NAME + "/i1/i2?15-5.ILinkListener-foo-bar&a=b&b=c");
+
+ context.setNextPageRenderCount(6);
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ ((IPageRequestHandler)handler).getPage();
+
+ }
+
+ /**
+ * WICKET-2993
+ */
+ @Test
+ public void decode10()
+ {
+ // use String.class but any other non-Page will do the job as well
+ Url url = Url.parse(String.class.getSimpleName());
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertNull("A non-page class should not create a request handler!", handler);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode1()
+ {
+ PageProvider provider = new PageProvider(MockPage.class, new PageParameters());
+ provider.setPageSource(context);
+ IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
+ Url url = encoder.mapHandler(handler);
+ assertEquals(PAGE_CLASS_NAME, url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode2()
+ {
+ PageParameters parameters = new PageParameters();
+ parameters.set(0, "i1");
+ parameters.set(1, "i2");
+ parameters.set("a", "b");
+ parameters.set("b", "c");
+ PageProvider provider = new PageProvider(MockPage.class, parameters);
+ provider.setPageSource(context);
+ IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
+ Url url = encoder.mapHandler(handler);
+ assertEquals(PAGE_CLASS_NAME + "/i1/i2?a=b&b=c", url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode3()
+ {
+ PageParameters parameters = new PageParameters();
+ parameters.set(0, "i1");
+ parameters.set(1, "i2");
+ parameters.set("a", "b");
+ parameters.set("b", "c");
+
+ PageProvider provider = new PageProvider(MockPage.class, parameters);
+ provider.setPageSource(context);
+ IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
+ Url url = encoder.mapHandler(handler);
+
+ assertEquals(PAGE_CLASS_NAME + "/i1/i2?a=b&b=c", url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode4()
+ {
+ MockPage page = new MockPage(15);
+ page.getPageParameters().set(0, "i1");
+ page.getPageParameters().set(1, "i2");
+ page.getPageParameters().set("a", "b");
+ page.getPageParameters().set("b", "c");
+ page.setCreatedBookmarkable(true);
+
+ IPageProvider provider = new PageProvider(page);
+ IRequestHandler handler = new RenderPageRequestHandler(provider);
+ Url url = encoder.mapHandler(handler);
+
+ assertEquals(PAGE_CLASS_NAME + "/i1/i2?15&a=b&b=c", url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode5()
+ {
+ MockPage page = new MockPage(15);
+ page.getPageParameters().set(0, "i1");
+ page.getPageParameters().set(1, "i2");
+ page.getPageParameters().set("a", "b");
+ page.getPageParameters().set("b", "c");
+
+ page.setCreatedBookmarkable(false);
+
+ IPageProvider provider = new PageProvider(page);
+ IRequestHandler handler = new RenderPageRequestHandler(provider);
+ Url url = encoder.mapHandler(handler);
+
+ // never allow bookmarkable render url for page that has not been created by bookmarkable
+ // URL
+
+ assertNull(url);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode6()
+ {
+ MockPage page = new MockPage(15);
+ page.getPageParameters().set(0, "i1");
+ page.getPageParameters().set(1, "i2");
+ page.getPageParameters().set("a", "b");
+ page.getPageParameters().set("b", "c");
+
+ // shouldn't make any difference for BookmarkableListenerInterfaceRequestHandler,
+ // as this explicitely says the url must be bookmarkable
+ page.setCreatedBookmarkable(false);
+
+ IRequestableComponent c = page.get("foo:bar");
+
+ PageAndComponentProvider provider = new PageAndComponentProvider(page, c);
+ IRequestHandler handler = new BookmarkableListenerInterfaceRequestHandler(provider,
+ ILinkListener.INTERFACE);
+
+ Url url = encoder.mapHandler(handler);
+
+ assertEquals(PAGE_CLASS_NAME + "/i1/i2?15-0.ILinkListener-foo-bar&a=b&b=c", url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode7()
+ {
+ MockPage page = new MockPage(15);
+ page.getPageParameters().set(0, "i1");
+ page.getPageParameters().set(1, "i2");
+ page.getPageParameters().set("a", "b");
+ page.getPageParameters().set("b", "c");
+
+ // shouldn't make any difference for BookmarkableListenerInterfaceRequestHandler,
+ // as this explicitely says the url must be bookmarkable
+ page.setCreatedBookmarkable(false);
+
+ IRequestableComponent c = page.get("foo:bar");
+
+ PageAndComponentProvider provider = new PageAndComponentProvider(page, c);
+ IRequestHandler handler = new BookmarkableListenerInterfaceRequestHandler(provider,
+ ILinkListener.INTERFACE, 4);
+
+ Url url = encoder.mapHandler(handler);
+
+ assertEquals(PAGE_CLASS_NAME + "/i1/i2?15-0.ILinkListener.4-foo-bar&a=b&b=c",
+ url.toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public 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(PAGE_CLASS_NAME, url.toString());
+ }
+
+
+ private final PackageMapper innerClassEncoder = new PackageMapper(
+ PackageName.forClass(OuterPage.class))
+ {
+ @Override
+ protected IMapperContext getContext()
+ {
+ return context;
+ }
+ };
+
+ public static class OuterPage extends MockPage
+ {
+ private static final long serialVersionUID = 1L;
+
+ public static class InnerPage extends MockPage
+ {
+ private static final long serialVersionUID = 1L;
+ }
+ }
+
+ /**
+ * https://issues.apache.org/jira/browse/WICKET-3838
+ */
+ @Test
+ public void encodeInnerClass()
+ {
+ InnerPage page = new OuterPage.InnerPage();
+ IPageProvider provider = new PageProvider(page);
+ IRequestHandler handler = new BookmarkablePageRequestHandler(provider);
+
+ Url url = innerClassEncoder.mapHandler(handler);
+
+ assertEquals("PackageMapperTest$OuterPage$InnerPage", url.toString());
+ }
+
+ /**
+ * https://issues.apache.org/jira/browse/WICKET-3838
+ */
+ @Test
+ public void decodeInnerClass()
+ {
+ Url url = Url.parse("PackageMapperTest$OuterPage$InnerPage");
+ IRequestHandler handler = innerClassEncoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ assertEquals("InnerPage", page.getClass().getSimpleName());
+ assertEquals(0, page.getPageParameters().getIndexedCount());
+ assertTrue(page.getPageParameters().getNamedKeys().isEmpty());
+ }
+
+ /**
+ * https://issues.apache.org/jira/browse/WICKET-3941
+ */
+ @Test
+ public void encodeAlias()
+ {
+ 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 = aliasEncoder.mapHandler(handler);
+
+ assertEquals(ALIAS, url.toString());
+ }
+
+ /**
+ * https://issues.apache.org/jira/browse/WICKET-3941
+ */
+ @Test
+ public void decodeAlias()
+ {
+ Url url = Url.parse(ALIAS + "?15");
+ IRequestHandler handler = aliasEncoder.mapRequest(getRequest(url));
+
+ assertTrue(handler instanceof RenderPageRequestHandler);
+ IRequestablePage page = ((RenderPageRequestHandler)handler).getPage();
+ checkPage(page, 15);
+ assertEquals(PAGE_CLASS_NAME, page.getClass().getSimpleName());
+ }
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PageInstanceMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PageInstanceMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PageInstanceMapperTest.java
new file mode 100644
index 0000000..df44b13
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PageInstanceMapperTest.java
@@ -0,0 +1,204 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.core.request.mapper;
+
+import org.apache.wicket.MockPage;
+import org.apache.wicket.markup.html.link.ILinkListener;
+import org.apache.wicket.request.IRequestHandler;
+import org.apache.wicket.request.Url;
+import org.apache.wicket.request.component.IRequestableComponent;
+import org.apache.wicket.core.request.handler.IPageProvider;
+import org.apache.wicket.core.request.handler.IPageRequestHandler;
+import org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler;
+import org.apache.wicket.core.request.handler.PageAndComponentProvider;
+import org.apache.wicket.core.request.handler.PageProvider;
+import org.apache.wicket.core.request.handler.RenderPageRequestHandler;
+import org.junit.Test;
+
+/**
+ *
+ * @author Matej Knopp
+ */
+public class PageInstanceMapperTest extends AbstractMapperTest
+{
+
+ private final PageInstanceMapper encoder = new PageInstanceMapper()
+ {
+ @Override
+ protected IMapperContext getContext()
+ {
+ return context;
+ }
+ };
+
+ /**
+ *
+ */
+ @Test
+ public void decode1()
+ {
+ Url url = Url.parse("wicket/page?4");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertTrue(handler instanceof RenderPageRequestHandler);
+
+ RenderPageRequestHandler h = (RenderPageRequestHandler)handler;
+ checkPage(h.getPage(), 4);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode2()
+ {
+ Url url = Url.parse("wicket/page/ingore/me?4&a=3&b=3");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertTrue(handler instanceof RenderPageRequestHandler);
+
+ RenderPageRequestHandler h = (RenderPageRequestHandler)handler;
+ checkPage(h.getPage(), 4);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode3()
+ {
+ Url url = Url.parse("wicket/page?4-ILinkListener-a-b-c");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+ checkPage(h.getPage(), 4);
+ assertEquals(h.getComponent().getPageRelativePath(), "a:b:c");
+ assertEquals(ILinkListener.INTERFACE, h.getListenerInterface());
+ assertNull(h.getBehaviorIndex());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode4()
+ {
+ Url url = Url.parse("wickett/pagee?4-ILinkListener-a:b-c");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertNull(handler);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode5()
+ {
+ Url url = Url.parse("wicket/page?abc");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertNull(handler);
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode6()
+ {
+ Url url = Url.parse("wicket/page?4-ILinkListener.5-a-b-c");
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+ checkPage(h.getPage(), 4);
+ assertEquals(h.getComponent().getPageRelativePath(), "a:b:c");
+ assertEquals(ILinkListener.INTERFACE, h.getListenerInterface());
+ assertEquals((Object)5, h.getBehaviorIndex());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void decode7()
+ {
+ Url url = Url.parse("wicket/page?4-6.ILinkListener.5-a-b-c");
+
+ context.setNextPageRenderCount(6);
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+ assertTrue(handler instanceof ListenerInterfaceRequestHandler);
+
+ ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler;
+ assertEquals(6, h.getPage().getRenderCount());
+ }
+
+ /**
+ *
+ */
+ @Test(expected = StalePageException.class)
+ public void decode8()
+ {
+ Url url = Url.parse("wicket/page?4-6.ILinkListener.5-a-b-c");
+
+ context.setNextPageRenderCount(8);
+
+ IRequestHandler handler = encoder.mapRequest(getRequest(url));
+
+ ((IPageRequestHandler)handler).getPage();
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void encode1()
+ {
+ MockPage page = new MockPage(15);
+ IPageProvider provider = new PageProvider(page);
+ IRequestHandler handler = new RenderPageRequestHandler(provider);
+
+ Url url = encoder.mapHandler(handler);
+ assertEquals("wicket/page?15", url.toString());
+ }
+
+
+ /**
+ *
+ */
+ @Test
+ public void encode2()
+ {
+ MockPage page = new MockPage(15);
+ page.setRenderCount(5);
+
+ IRequestableComponent c = page.get("a:b:c");
+
+ PageAndComponentProvider provider = new PageAndComponentProvider(page, c);
+ IRequestHandler handler = new ListenerInterfaceRequestHandler(provider,
+ ILinkListener.INTERFACE);
+
+ Url url = encoder.mapHandler(handler);
+ assertEquals("wicket/page?15-5.ILinkListener-a-b-c", url.toString());
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/ResourceMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/ResourceMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/ResourceMapperTest.java
new file mode 100644
index 0000000..152926a
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/ResourceMapperTest.java
@@ -0,0 +1,277 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.core.request.mapper;
+
+import java.nio.charset.Charset;
+import java.util.List;
+import java.util.Locale;
+
+import org.apache.wicket.WicketTestCase;
+import org.apache.wicket.request.IRequestHandler;
+import org.apache.wicket.request.IRequestMapper;
+import org.apache.wicket.request.Request;
+import org.apache.wicket.request.Url;
+import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.apache.wicket.request.resource.IResource;
+import org.apache.wicket.request.resource.ResourceReference;
+import org.apache.wicket.request.resource.SharedResourceReference;
+import org.apache.wicket.util.string.StringValue;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ */
+public class ResourceMapperTest extends WicketTestCase
+{
+ private static final Charset CHARSET = Charset.forName("UTF-8");
+ private static final String SHARED_NAME = "test-resource";
+
+ private IRequestMapper mapper;
+ private IRequestMapper mapperWithPlaceholder;
+ private TestResource resource;
+
+ /**
+ * @throws Exception
+ */
+ @Before
+ public void before() throws Exception
+ {
+ resource = new TestResource();
+ tester.getApplication().getSharedResources().add(SHARED_NAME, resource);
+ ResourceReference resourceReference = new SharedResourceReference(SHARED_NAME);
+ mapper = new ResourceMapper("/test/resource", resourceReference);
+ mapperWithPlaceholder = new ResourceMapper("/test2/${name}/resource", resourceReference);
+ tester.getApplication().getRootRequestMapperAsCompound().add(mapper);
+ }
+
+ private Request createRequest(final String url)
+ {
+ return new Request()
+ {
+ @Override
+ public Url getUrl()
+ {
+ return Url.parse(url, CHARSET);
+ }
+
+ @Override
+ public Locale getLocale()
+ {
+ return null;
+ }
+
+ @Override
+ public Charset getCharset()
+ {
+ return CHARSET;
+ }
+
+ @Override
+ public Url getClientUrl()
+ {
+ return getUrl();
+ }
+
+ @Override
+ public Object getContainerRequest()
+ {
+ return null;
+ }
+ };
+ }
+
+ /**
+ * testInvalidPathIsEmpty()
+ */
+ @Test
+ public void invalidPathIsEmpty()
+ {
+ IRequestHandler requestHandler = mapper.mapRequest(createRequest(""));
+ assertNull(requestHandler);
+ }
+
+ /**
+ * testInvalidPathIsMismatch()
+ */
+ @Test
+ public void invalidPathIsMismatch()
+ {
+ IRequestHandler requestHandler = mapper.mapRequest(createRequest("test/resourcex"));
+ assertNull(requestHandler);
+ }
+
+ /**
+ * testInvalidPathIsTooShort()
+ */
+ @Test
+ public void invalidPathIsTooShort()
+ {
+ IRequestHandler requestHandler = mapper.mapRequest(createRequest("test"));
+ assertNull(requestHandler);
+ }
+
+ /**
+ * testValidPathWithParams()
+ */
+ @Test
+ public void validPathWithParams()
+ {
+ Request request = createRequest("test/resource/1/fred");
+ IRequestHandler requestHandler = mapper.mapRequest(request);
+ assertNotNull(requestHandler);
+ assertEquals(ResourceReferenceRequestHandler.class, requestHandler.getClass());
+ assertEquals(request.getUrl(), mapper.mapHandler(requestHandler));
+
+ tester.processRequest(requestHandler);
+ PageParameters params = resource.pageParameters;
+ assertNotNull(params);
+ assertEquals(0, params.getAllNamed().size());
+ assertEquals(2, params.getIndexedCount());
+
+ StringValue paramId = params.get(0);
+ assertNotNull(paramId);
+ assertEquals(1, paramId.toInt());
+
+ StringValue paramName = params.get(1);
+ assertNotNull(paramName);
+ assertEquals("fred", paramName.toString());
+ }
+
+ /**
+ * testValidPathWithParamsAndQueryPath()
+ */
+ @Test
+ public void validPathWithParamsAndQueryPath()
+ {
+ Request request = createRequest("test/resource/1/fred?foo=bar&foo=baz&value=12");
+ IRequestHandler requestHandler = mapper.mapRequest(request);
+ assertNotNull(requestHandler);
+ assertEquals(ResourceReferenceRequestHandler.class, requestHandler.getClass());
+ assertEquals(request.getUrl(), mapper.mapHandler(requestHandler));
+
+ tester.processRequest(requestHandler);
+ PageParameters params = resource.pageParameters;
+ assertNotNull(params);
+ assertEquals(3, params.getAllNamed().size());
+ assertEquals(2, params.getIndexedCount());
+
+ StringValue paramId = params.get(0);
+ assertNotNull(paramId);
+ assertEquals(1, paramId.toInt());
+
+ StringValue paramName = params.get(1);
+ assertNotNull(paramName);
+ assertEquals("fred", paramName.toString());
+
+ List<StringValue> foo = params.getValues("foo");
+ assertNotNull(foo.size() == 2);
+ assertEquals("bar", foo.get(0).toString(""));
+ assertEquals("baz", foo.get(1).toString(""));
+
+ StringValue paramValue = params.get("value");
+ assertEquals(12, paramValue.toInt());
+ }
+
+ /**
+ * testPlaceholders()
+ */
+ @Test
+ public void placeholders()
+ {
+ Request request = createRequest("test2/image/resource/foo/bar?a=abc&b=123");
+ IRequestHandler requestHandler = mapperWithPlaceholder.mapRequest(request);
+ assertNotNull(requestHandler);
+ assertEquals(ResourceReferenceRequestHandler.class, requestHandler.getClass());
+ assertEquals(request.getUrl(), mapperWithPlaceholder.mapHandler(requestHandler));
+
+ tester.processRequest(requestHandler);
+ PageParameters params = resource.pageParameters;
+ assertNotNull(params);
+ assertEquals(3, params.getAllNamed().size());
+ assertEquals(2, params.getIndexedCount());
+
+ assertEquals("foo", params.get(0).toString());
+ assertEquals("bar", params.get(1).toString());
+
+ assertEquals("image", params.get("name").toString());
+ assertEquals("abc", params.get("a").toString());
+ assertEquals("123", params.get("b").toString());
+ }
+
+ /**
+ * testPlaceholdersWithQueryParamDuplicate()
+ */
+ @Test
+ public void placeholdersWithQueryParamDuplicate()
+ {
+ // we have one named parameter that exists twice
+ Request request = createRequest("test2/image/resource/foo/bar?name=name-2&val=123");
+ IRequestHandler handler = mapperWithPlaceholder.mapRequest(request);
+ assertNotNull(handler);
+ assertEquals(ResourceReferenceRequestHandler.class, handler.getClass());
+
+ // the query part of the duplicate should be gone now
+ Url newUrl = mapperWithPlaceholder.mapHandler(handler);
+ assertEquals(Url.parse("test2/name-2/resource/foo/bar?val=123"), newUrl);
+
+ // create new request
+ request = createRequest(newUrl.toString());
+
+ // get handler again
+ handler = mapperWithPlaceholder.mapRequest(request);
+ assertNotNull(handler);
+
+ tester.processRequest(handler);
+ PageParameters params = resource.pageParameters;
+ assertNotNull(params);
+ assertEquals(2, params.getAllNamed().size());
+ assertEquals(2, params.getIndexedCount());
+
+ assertEquals("foo", params.get(0).toString());
+ assertEquals("bar", params.get(1).toString());
+
+ assertEquals("name-2", params.get("name").toString());
+ assertEquals("123", params.get("val").toString());
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void requestWithEmptyFilename()
+ {
+ // request invalid path with empty filename
+ // this must not return a handler
+ Request request = createRequest("test2/image/");
+ IRequestHandler handler = mapperWithPlaceholder.mapRequest(request);
+ assertNull(handler);
+ }
+
+ private static class TestResource implements IResource
+ {
+ private static final long serialVersionUID = -3130204487473856574L;
+
+ public PageParameters pageParameters;
+
+ @Override
+ public void respond(Attributes attributes)
+ {
+ pageParameters = attributes.getParameters();
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/TestMapperContext.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/TestMapperContext.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/TestMapperContext.java
new file mode 100644
index 0000000..21cd969
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/TestMapperContext.java
@@ -0,0 +1,249 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.core.request.mapper;
+
+import org.apache.wicket.MockPage;
+import org.apache.wicket.RequestListenerInterface;
+import org.apache.wicket.WicketRuntimeException;
+import org.apache.wicket.markup.MarkupParser;
+import org.apache.wicket.page.IPageManagerContext;
+import org.apache.wicket.page.PageStoreManager;
+import org.apache.wicket.pageStore.DefaultPageStore;
+import org.apache.wicket.pageStore.IDataStore;
+import org.apache.wicket.pageStore.IPageStore;
+import org.apache.wicket.pageStore.memory.DummyPageManagerContext;
+import org.apache.wicket.request.component.IRequestablePage;
+import org.apache.wicket.core.request.handler.PageProvider;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.apache.wicket.request.resource.ResourceReference;
+import org.apache.wicket.request.resource.ResourceReference.Key;
+import org.apache.wicket.request.resource.ResourceReferenceRegistry;
+import org.apache.wicket.serialize.java.JavaSerializer;
+import org.apache.wicket.versioning.InMemoryPageStore;
+
+/**
+ * Simple {@link IMapperContext} implementation for testing purposes
+ *
+ * @author Matej Knopp
+ */
+public class TestMapperContext implements IMapperContext
+{
+ private static final String APP_NAME = "test_app";
+ private static int count;
+ IDataStore dataStore;
+ IPageStore pageStore;
+ IPageManagerContext pageManagerContext;
+ PageStoreManager pageManager;
+ private String appName;
+ private boolean createMockPageIfInstanceNotFound = true;
+
+ /**
+ * Construct.
+ */
+ public TestMapperContext()
+ {
+ appName = APP_NAME + count++;
+ dataStore = new InMemoryPageStore();
+ pageStore = new DefaultPageStore(new JavaSerializer(appName), dataStore, 4);
+ pageManagerContext = new DummyPageManagerContext();
+ pageManager = new PageStoreManager(appName, pageStore, pageManagerContext);
+ }
+
+ /**
+ * just making sure the session cache will be empty by simulating an intermezzo request
+ */
+ public void cleanSessionCache()
+ {
+ getPageManager().getContext().setRequestData(null);
+ MockPage other = new MockPage();
+ other.setPageId(Integer.MAX_VALUE);
+ getPageManager().touchPage(other);
+ getPageManager().commitRequest();
+ }
+
+ /**
+ * @return pageManager
+ */
+ public PageStoreManager getPageManager()
+ {
+ return pageManager;
+ }
+
+ @Override
+ public String getBookmarkableIdentifier()
+ {
+ return "bookmarkable";
+ }
+
+ @Override
+ public String getNamespace()
+ {
+ return MarkupParser.WICKET;
+ }
+
+ @Override
+ public String getPageIdentifier()
+ {
+ return "page";
+ }
+
+ @Override
+ public String getResourceIdentifier()
+ {
+ return "resource";
+ }
+
+ @Override
+ public ResourceReferenceRegistry getResourceReferenceRegistry()
+ {
+ return registry;
+ }
+
+ private final ResourceReferenceRegistry registry = new ResourceReferenceRegistry()
+ {
+ @Override
+ protected ResourceReference createDefaultResourceReference(Key key)
+ {
+ // Do not create package resource here because it requires "real" application
+ return null;
+ }
+ };
+
+ private boolean bookmarkable = true;
+
+ /**
+ * Determines whether the newly created page will have bookmarkable flag set
+ *
+ * @param bookmarkable
+ */
+ public void setBookmarkable(boolean bookmarkable)
+ {
+ this.bookmarkable = bookmarkable;
+ }
+
+ private boolean createdBookmarkable = true;
+
+ /**
+ * Determines whether the newly created page will have createdBookmarkable flag set
+ *
+ * @param createdBookmarkable
+ */
+ public void setCreatedBookmarkable(boolean createdBookmarkable)
+ {
+ this.createdBookmarkable = createdBookmarkable;
+ }
+
+ private int nextPageRenderCount = 0;
+
+ /**
+ *
+ * @param nextPageRenderCount
+ */
+ public void setNextPageRenderCount(int nextPageRenderCount)
+ {
+ this.nextPageRenderCount = nextPageRenderCount;
+ }
+
+ @Override
+ public IRequestablePage getPageInstance(int pageId)
+ {
+
+ IRequestablePage requestablePage = (IRequestablePage)pageManager.getPage(pageId);
+ if (requestablePage == null && createMockPageIfInstanceNotFound)
+ {
+ MockPage page = new MockPage();
+ page.setPageId(pageId);
+ page.setBookmarkable(bookmarkable);
+ page.setCreatedBookmarkable(createdBookmarkable);
+ page.setRenderCount(nextPageRenderCount);
+ requestablePage = page;
+ }
+ return requestablePage;
+
+ }
+
+ int idCounter = 0;
+
+ @Override
+ public IRequestablePage newPageInstance(Class<? extends IRequestablePage> pageClass,
+ PageParameters pageParameters)
+ {
+ try
+ {
+ MockPage page;
+ page = (MockPage)pageClass.newInstance();
+ page.setPageId(++idCounter);
+ page.setBookmarkable(true);
+ page.setCreatedBookmarkable(true);
+ if (pageParameters != null)
+ {
+ page.getPageParameters().overwriteWith(pageParameters);
+ }
+ return page;
+ }
+ catch (Exception e)
+ {
+ throw new WicketRuntimeException(e);
+ }
+ }
+
+ @Override
+ public RequestListenerInterface requestListenerInterfaceFromString(String interfaceName)
+ {
+ return RequestListenerInterface.forName(interfaceName);
+ }
+
+ @Override
+ public String requestListenerInterfaceToString(RequestListenerInterface listenerInterface)
+ {
+ return listenerInterface.getName();
+ }
+
+ @Override
+ public Class<? extends IRequestablePage> getHomePageClass()
+ {
+ return MockPage.class;
+ }
+
+ /**
+ *
+ * Adapts {@link PageProvider} to this {@link IMapperContext}
+ *
+ * @author Pedro Santos
+ */
+ public class TestPageProvider extends PageProvider
+ {
+
+ /**
+ * Construct.
+ *
+ * @param pageId
+ * @param renderCount
+ */
+ public TestPageProvider(int pageId, Integer renderCount)
+ {
+ super(pageId, renderCount);
+ }
+
+ @Override
+ protected IPageSource getPageSource()
+ {
+ return TestMapperContext.this;
+ }
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
new file mode 100644
index 0000000..c3c4666
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/UrlInfoTest.java
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.core.request.mapper;
+
+import org.apache.wicket.MockPage;
+import org.apache.wicket.request.http.WebRequest;
+import org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.UrlInfo;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * Tests for {@link UrlInfo}
+ */
+public class UrlInfoTest extends Assert
+{
+
+ /**
+ * WICKET-4038 & WICKET-4054
+ */
+ @Test
+ public void wicket4038()
+ {
+ PageParameters parameters = new PageParameters();
+ parameters.add(WebRequest.PARAM_AJAX, "true");
+ parameters.add(WebRequest.PARAM_AJAX_BASE_URL, "base/url");
+ parameters.add(WebRequest.PARAM_AJAX_REQUEST_ANTI_CACHE, "12345.6879");
+
+ AbstractBookmarkableMapper.UrlInfo info = new UrlInfo(null, MockPage.class, parameters);
+ assertNull(info.getPageParameters());
+ }
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/crypt.txt
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/crypt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/crypt.txt
new file mode 100644
index 0000000..266c44d
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/crypt.txt
@@ -0,0 +1 @@
+CryptoMapperTest#testResourceReference()
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/modified-crypt.txt
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/modified-crypt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/modified-crypt.txt
new file mode 100644
index 0000000..380a05e
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/modified-crypt.txt
@@ -0,0 +1 @@
+CryptoMapperTest#testResourceReferenceWithModifiedSegments()
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/more/crypt.txt
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/more/crypt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/more/crypt.txt
new file mode 100644
index 0000000..9be729d
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/crypt/more/crypt.txt
@@ -0,0 +1 @@
+CryptoMapperTest#testResourceReferenceWithMoreSegments()
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/less-crypt.txt
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/less-crypt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/less-crypt.txt
new file mode 100644
index 0000000..1e726e9
--- /dev/null
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/less-crypt.txt
@@ -0,0 +1 @@
+CryptoMapperTest#testResourceReferenceWithLessSegments()
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java
index 670e711..e09d4ad 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/MarkupParserTest.java
@@ -31,8 +31,8 @@ import org.apache.wicket.markup.parser.filter.WicketTagIdentifier;
import org.apache.wicket.settings.IMarkupSettings;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
-import org.apache.wicket.util.resource.locator.IResourceStreamLocator;
-import org.apache.wicket.util.resource.locator.ResourceStreamLocator;
+import org.apache.wicket.core.util.resource.locator.IResourceStreamLocator;
+import org.apache.wicket.core.util.resource.locator.ResourceStreamLocator;
import org.apache.wicket.util.string.StringValueConversionException;
import org.junit.Test;
import org.slf4j.Logger;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/markup/html/TransparentWebMarkupContainerTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/TransparentWebMarkupContainerTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/TransparentWebMarkupContainerTest.java
index 91da70a..9ea081b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/TransparentWebMarkupContainerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/TransparentWebMarkupContainerTest.java
@@ -27,7 +27,7 @@ import org.apache.wicket.mock.MockPageManager;
import org.apache.wicket.page.IManageablePage;
import org.apache.wicket.page.IPageManager;
import org.apache.wicket.page.IPageManagerContext;
-import org.apache.wicket.util.lang.WicketObjects;
+import org.apache.wicket.core.util.lang.WicketObjects;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.resource.StringResourceStream;
import org.apache.wicket.util.tester.WicketTester;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormParentDisabledRawInputTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormParentDisabledRawInputTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormParentDisabledRawInputTest.java
index 56ceeb7..1fd0ee7 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormParentDisabledRawInputTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormParentDisabledRawInputTest.java
@@ -21,7 +21,7 @@ import org.apache.wicket.WicketTestCase;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.request.handler.ListenerInvocationNotAllowedException;
+import org.apache.wicket.core.request.handler.ListenerInvocationNotAllowedException;
import org.junit.Test;
/**
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormSubmitTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormSubmitTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormSubmitTest.java
index 783d273..7912583 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormSubmitTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/FormSubmitTest.java
@@ -19,7 +19,7 @@ package org.apache.wicket.markup.html.form;
import org.apache.wicket.Page;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.markup.html.form.NestedFormsPage.NestableForm;
-import org.apache.wicket.request.handler.ListenerInvocationNotAllowedException;
+import org.apache.wicket.core.request.handler.ListenerInvocationNotAllowedException;
import org.apache.wicket.util.tester.FormTester;
import org.junit.Before;
import org.junit.Test;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
index a447216..93218af 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/link/MountedPageLinkTest.java
@@ -18,7 +18,7 @@ package org.apache.wicket.markup.html.link;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.protocol.http.PageExpiredException;
-import org.apache.wicket.request.mapper.PageInstanceMapper;
+import org.apache.wicket.core.request.mapper.PageInstanceMapper;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.settings.IPageSettings;
import org.junit.Before;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/page/PageAccessSynchronizerTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/page/PageAccessSynchronizerTest.java b/wicket-core/src/test/java/org/apache/wicket/page/PageAccessSynchronizerTest.java
index 0634762..ac5838e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/page/PageAccessSynchronizerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/page/PageAccessSynchronizerTest.java
@@ -24,7 +24,7 @@ import org.apache.wicket.MockPage;
import org.apache.wicket.mock.MockPageManager;
import org.apache.wicket.page.PageAccessSynchronizer.PageLock;
import org.apache.wicket.util.SlowTests;
-import org.apache.wicket.util.lang.WicketObjects;
+import org.apache.wicket.core.util.lang.WicketObjects;
import org.apache.wicket.util.time.Duration;
import org.apache.wicket.util.time.Time;
import org.junit.Assert;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/pageStore/memory/MemorySizeEvictionStrategyTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/pageStore/memory/MemorySizeEvictionStrategyTest.java b/wicket-core/src/test/java/org/apache/wicket/pageStore/memory/MemorySizeEvictionStrategyTest.java
index afdbbc4..50033fa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/pageStore/memory/MemorySizeEvictionStrategyTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/pageStore/memory/MemorySizeEvictionStrategyTest.java
@@ -20,7 +20,7 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.apache.wicket.util.lang.Bytes;
-import org.apache.wicket.util.lang.WicketObjects;
+import org.apache.wicket.core.util.lang.WicketObjects;
import org.junit.Test;
/***/
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/protocol/http/WebExternalResourceTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/protocol/http/WebExternalResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/protocol/http/WebExternalResourceTest.java
index 42a1212..9152f0a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/protocol/http/WebExternalResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/protocol/http/WebExternalResourceTest.java
@@ -24,7 +24,7 @@ import org.apache.wicket.mock.MockApplication;
import org.apache.wicket.request.handler.resource.ResourceStreamRequestHandler;
import org.apache.wicket.request.handler.resource.WebExternalResourceRequestHandler;
import org.apache.wicket.util.io.Streams;
-import org.apache.wicket.util.resource.WebExternalResourceStream;
+import org.apache.wicket.core.util.resource.WebExternalResourceStream;
import org.apache.wicket.util.tester.WicketTester;
import org.junit.After;
import org.junit.Assert;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/protocol/http/request/CryptedUrlWebRequestCodingStrategyTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/protocol/http/request/CryptedUrlWebRequestCodingStrategyTest.java b/wicket-core/src/test/java/org/apache/wicket/protocol/http/request/CryptedUrlWebRequestCodingStrategyTest.java
index 9769d90..eab676d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/protocol/http/request/CryptedUrlWebRequestCodingStrategyTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/protocol/http/request/CryptedUrlWebRequestCodingStrategyTest.java
@@ -22,7 +22,7 @@ import org.apache.wicket.markup.html.basic.SimplePage;
import org.apache.wicket.mock.MockApplication;
import org.apache.wicket.protocol.http.WebApplication;
import org.apache.wicket.request.mapper.CompoundRequestMapper;
-import org.apache.wicket.request.mapper.CryptoMapper;
+import org.apache.wicket.core.request.mapper.CryptoMapper;
import org.apache.wicket.util.crypt.Base64;
import org.apache.wicket.util.crypt.ICrypt;
import org.apache.wicket.util.crypt.ICryptFactory;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/protocol/https/HttpsMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/protocol/https/HttpsMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/protocol/https/HttpsMapperTest.java
index b6419e7..536015c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/protocol/https/HttpsMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/protocol/https/HttpsMapperTest.java
@@ -33,8 +33,8 @@ import org.apache.wicket.protocol.https.HttpsMapper.RedirectHandler;
import org.apache.wicket.request.IRequestHandler;
import org.apache.wicket.request.IRequestMapper;
import org.apache.wicket.request.Url;
-import org.apache.wicket.request.handler.PageProvider;
-import org.apache.wicket.request.handler.RenderPageRequestHandler;
+import org.apache.wicket.core.request.handler.PageProvider;
+import org.apache.wicket.core.request.handler.RenderPageRequestHandler;
import org.junit.Test;
public class HttpsMapperTest
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleUrlForTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleUrlForTest.java b/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleUrlForTest.java
index b779521..0c657c4 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleUrlForTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/cycle/RequestCycleUrlForTest.java
@@ -26,7 +26,7 @@ import org.apache.wicket.request.IRequestMapper;
import org.apache.wicket.request.Request;
import org.apache.wicket.request.Response;
import org.apache.wicket.request.Url;
-import org.apache.wicket.request.handler.BookmarkablePageRequestHandler;
+import org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler;
import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
import org.apache.wicket.request.handler.resource.ResourceRequestHandler;
import org.apache.wicket.request.mapper.parameter.PageParameters;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandlerTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandlerTest.java b/wicket-core/src/test/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandlerTest.java
deleted file mode 100644
index 18fe90e..0000000
--- a/wicket-core/src/test/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandlerTest.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.wicket.request.handler;
-
-import java.io.IOException;
-import java.text.ParseException;
-
-import org.apache.wicket.MarkupContainer;
-import org.apache.wicket.Page;
-import org.apache.wicket.RequestListenerInterface;
-import org.apache.wicket.Session;
-import org.apache.wicket.WicketTestCase;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.markup.IMarkupResourceStreamProvider;
-import org.apache.wicket.markup.html.WebPage;
-import org.apache.wicket.markup.html.link.ILinkListener;
-import org.apache.wicket.request.Url;
-import org.apache.wicket.util.resource.IResourceStream;
-import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
-import org.apache.wicket.util.resource.StringResourceStream;
-import org.junit.Test;
-
-/**
- * Tests for {@link ListenerInterfaceRequestHandler}
- */
-public class ListenerInterfaceRequestHandlerTest extends WicketTestCase
-{
-
- /**
- * https://issues.apache.org/jira/browse/WICKET-4116
- *
- * @throws Exception
- */
- @Test
- public void recreateThePageWhenListenereInterfaceIsExecutedOnExpiredPage() throws Exception
- {
- tester.getApplication().mountPage("ajaxLink", AjaxLinkExpirePage.class);
- AjaxLinkExpirePage page = tester.startPage(AjaxLinkExpirePage.class);
-
- int initialPageId = page.getPageId();
-
- Url urlToAjaxLink = tester.urlFor(page.link);
- Session session = tester.getSession();
- session.getPageManager().sessionExpired(session.getId());
-
- // fire a request to the ajax link on the expired page
- executeAjaxUrlWithLastBaseUrl(urlToAjaxLink);
-
- Page lastRenderedPage = tester.getLastRenderedPage();
- int lastRenderedPageId = lastRenderedPage.getPageId();
- assertTrue("A new page must be create ", lastRenderedPageId > initialPageId);
- }
-
- private void executeAjaxUrlWithLastBaseUrl(Url url) throws IOException,
- ResourceStreamNotFoundException, ParseException
- {
- tester.getRequest().setUrl(url);
- tester.getRequest().addHeader("Wicket-Ajax-BaseURL",
- tester.getWicketAjaxBaseUrlEncodedInLastResponse());
- tester.getRequest().addHeader("Wicket-Ajax", "true");
- tester.processRequest();
- }
-
- /**
- * Test page for #recreateThePageWhenListenereInterfaceIsExecutedOnExpiredPage()
- */
- public static class AjaxLinkExpirePage extends WebPage implements IMarkupResourceStreamProvider
- {
- private static final long serialVersionUID = 1L;
-
- private AjaxLink<Void> link;
-
- /**
- * Constructor.
- */
- public AjaxLinkExpirePage()
- {
- add(link = new AjaxLink<Void>("test")
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void onClick(AjaxRequestTarget target)
- {
- System.err.println("clicked");
- }
- });
- }
-
- @Override
- public IResourceStream getMarkupResourceStream(MarkupContainer container,
- Class<?> containerClass)
- {
-
- return new StringResourceStream(
- "<html><body><a wicket:id='test'>Link</a></body></html>");
- }
-
- }
-
- /**
- * Testcase for WICKET-4185
- */
- @Test
- public void isPageInstanceCreatedOnClassLinks()
- {
- PageAndComponentProvider provider = new PageAndComponentProvider(Page.class, "link");
- ListenerInterfaceRequestHandler handler = new ListenerInterfaceRequestHandler(provider,
- RequestListenerInterface.forName(ILinkListener.class.getSimpleName()));
- assertFalse("Handler should not report a page instance is available ",
- handler.isPageInstanceCreated());
- }
-}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/handler/PageProviderTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/handler/PageProviderTest.java b/wicket-core/src/test/java/org/apache/wicket/request/handler/PageProviderTest.java
index b2e182d..917b15a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/handler/PageProviderTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/handler/PageProviderTest.java
@@ -26,12 +26,13 @@ import org.apache.wicket.RestartResponseAtInterceptPageException;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
+import org.apache.wicket.core.request.handler.PageProvider;
import org.apache.wicket.markup.IMarkupResourceStreamProvider;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.request.Url;
-import org.apache.wicket.request.mapper.StalePageException;
-import org.apache.wicket.request.mapper.TestMapperContext;
+import org.apache.wicket.core.request.mapper.StalePageException;
+import org.apache.wicket.core.request.mapper.TestMapperContext;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
import org.apache.wicket.util.resource.StringResourceStream;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java
index 77a91e4..3ce620c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/request/handler/render/WebPageRendererTest.java
@@ -31,9 +31,9 @@ import org.apache.wicket.request.Url;
import org.apache.wicket.request.UrlRenderer;
import org.apache.wicket.request.component.IRequestablePage;
import org.apache.wicket.request.cycle.RequestCycle;
-import org.apache.wicket.request.handler.IPageProvider;
-import org.apache.wicket.request.handler.RenderPageRequestHandler;
-import org.apache.wicket.request.handler.RenderPageRequestHandler.RedirectPolicy;
+import org.apache.wicket.core.request.handler.IPageProvider;
+import org.apache.wicket.core.request.handler.RenderPageRequestHandler;
+import org.apache.wicket.core.request.handler.RenderPageRequestHandler.RedirectPolicy;
import org.apache.wicket.request.http.WebRequest;
import org.apache.wicket.request.http.WebResponse;
import org.apache.wicket.settings.IRequestCycleSettings;
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractMapperTest.java
deleted file mode 100644
index 57455c4..0000000
--- a/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractMapperTest.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.wicket.request.mapper;
-
-import java.nio.charset.Charset;
-import java.util.Locale;
-
-import org.apache.wicket.RequestListenerInterface;
-import org.apache.wicket.markup.html.link.ILinkListener;
-import org.apache.wicket.request.Request;
-import org.apache.wicket.request.Url;
-import org.apache.wicket.request.component.IRequestablePage;
-import org.junit.Assert;
-import org.junit.Before;
-
-/**
- * @author Matej Knopp
- */
-public abstract class AbstractMapperTest extends Assert
-{
- /**
- * Construct.
- */
- public AbstractMapperTest()
- {
- }
-
- protected TestMapperContext context = new TestMapperContext();
-
- /**
- * @throws Exception
- */
- @Before
- public void before() throws Exception
- {
- // inititalize the interface
- RequestListenerInterface i = ILinkListener.INTERFACE;
- }
-
- protected Request getRequest(final Url url)
- {
- return new Request()
- {
- @Override
- public Url getUrl()
- {
- return url;
- }
-
- @Override
- public Locale getLocale()
- {
- return null;
- }
-
- @Override
- public Charset getCharset()
- {
- return Charset.forName("UTF-8");
- }
-
- @Override
- public Url getClientUrl()
- {
- return url;
- }
-
- @Override
- public Object getContainerRequest()
- {
- return null;
- }
- };
- }
-
- protected void checkPage(IRequestablePage page, int id)
- {
- assertEquals(id, page.getPageId());
- }
-
-}
http://git-wip-us.apache.org/repos/asf/wicket/blob/53f07873/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractResourceReferenceMapperTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractResourceReferenceMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractResourceReferenceMapperTest.java
deleted file mode 100644
index ba97d58..0000000
--- a/wicket-core/src/test/java/org/apache/wicket/request/mapper/AbstractResourceReferenceMapperTest.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.wicket.request.mapper;
-
-import java.util.Locale;
-
-import org.apache.wicket.request.resource.IResource;
-import org.apache.wicket.request.resource.ResourceReference;
-import org.junit.Before;
-
-/**
- * @author Matej Knopp
- */
-public abstract class AbstractResourceReferenceMapperTest extends AbstractMapperTest
-{
- /**
- * Construct.
- */
- public AbstractResourceReferenceMapperTest()
- {
- }
-
- protected final IResource resource1 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected final IResource resource2 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected final IResource resource3 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected final IResource resource4 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected final IResource resource5 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected final IResource resource6 = new IResource()
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public void respond(Attributes attributes)
- {
- }
- };
-
- protected String CLASS_NAME = AbstractResourceReferenceMapperTest.class.getName();
-
- protected ResourceReference reference1 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference1", null, null, null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource1;
- }
- };
-
- protected ResourceReference reference1_a = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference1", Locale.ENGLISH, null, null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource1;
- }
- };
-
- protected ResourceReference reference1_b = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference1", null, "style", null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource1;
- }
- };
-
- protected ResourceReference reference2 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference2/name2", new Locale("en", "en"),
- null, null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource2;
- }
- };
-
- protected ResourceReference reference2_a = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference2/name2", new Locale("en", "en"),
- "style", null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource2;
- }
- };
-
- protected ResourceReference reference3 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference3", null, "style", null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource3;
- }
- };
-
- protected ResourceReference reference4 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference4", Locale.ENGLISH, "style", null)
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource4;
- }
- };
-
- protected ResourceReference reference5 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference5", Locale.ENGLISH, null, "variation")
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource5;
- }
- };
-
- protected ResourceReference reference6 = new ResourceReference(
- AbstractResourceReferenceMapperTest.class, "reference6", Locale.ENGLISH, "style",
- "variation")
- {
- private static final long serialVersionUID = 1L;
-
- @Override
- public IResource getResource()
- {
- return resource6;
- }
- };
-
- @Override
- @Before
- public void before() throws Exception
- {
- context.getResourceReferenceRegistry().registerResourceReference(reference1);
- context.getResourceReferenceRegistry().registerResourceReference(reference1_a);
- context.getResourceReferenceRegistry().registerResourceReference(reference1_b);
- context.getResourceReferenceRegistry().registerResourceReference(reference2);
- context.getResourceReferenceRegistry().registerResourceReference(reference2_a);
- context.getResourceReferenceRegistry().registerResourceReference(reference3);
- context.getResourceReferenceRegistry().registerResourceReference(reference4);
- context.getResourceReferenceRegistry().registerResourceReference(reference5);
- context.getResourceReferenceRegistry().registerResourceReference(reference6);
- }
-}