Author: thrantal
Date: Thu Jul 17 20:34:37 2008
New Revision: 677811
URL: http://svn.apache.org/viewvc?rev=677811&view=rev
Log:
WICKET-1737: Applied fix to trunk as well
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/MockWebApplicationTest.java
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java?rev=677811&r1=677810&r2=677811&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
Thu Jul 17 20:34:37 2008
@@ -22,7 +22,6 @@
import java.util.Iterator;
import java.util.Map;
import java.util.TreeSet;
-
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
@@ -209,7 +208,9 @@
IRequestCycleSettings.ONE_PASS_RENDER);
// Don't buffer the response, as this can break ajax tests: see
WICKET-1264
this.application.getRequestCycleSettings().setBufferResponse(false);
- this.application.getResourceSettings().setResourceFinder(new
WebApplicationPath(context));
+ if (this.application.getResourceFinder() == null) {
+
this.application.getResourceSettings().setResourceFinder(new
WebApplicationPath(context));
+ }
this.application.getPageSettings().setAutomaticMultiWindowSupport(false);
// Since the purpose of MockWebApplication is singlethreaded
Modified:
wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/MockWebApplicationTest.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/MockWebApplicationTest.java?rev=677811&r1=677810&r2=677811&view=diff
==============================================================================
---
wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/MockWebApplicationTest.java
(original)
+++
wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/MockWebApplicationTest.java
Thu Jul 17 20:34:37 2008
@@ -20,14 +20,18 @@
import junit.framework.Assert;
import junit.framework.TestCase;
-
+import org.apache.wicket.Application;
import org.apache.wicket.Session;
import org.apache.wicket.feedback.FeedbackMessage;
import org.apache.wicket.feedback.FeedbackMessages;
import org.apache.wicket.feedback.IFeedbackMessageFilter;
import org.apache.wicket.markup.html.link.Link;
+import org.apache.wicket.settings.IResourceSettings;
import org.apache.wicket.util.diff.DiffUtil;
+import org.apache.wicket.util.file.IResourceFinder;
+import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.tester.WicketTester;
+import org.apache.wicket.util.tester.WicketTester.DummyWebApplication;
/**
* Simple application that demonstrates the mock http application code (and
checks that it is
@@ -141,4 +145,37 @@
p = (MockPage)application.getLastRenderedPage();
Assert.assertEquals("Link should have been clicked 1 time", 1,
p.getLinkClickCount());
}
+
+ public void testProvidesDefaultResourceFinderIfNotSetByApplication()
+ {
+
Assert.assertNotNull(Application.get().getResourceSettings().getResourceFinder());
+ }
+
+ public void testHonorsResourceFinderSettingsSetByApplication()
+ {
+ final IResourceFinder customResourceFinder = new
IResourceFinder()
+ {
+ public IResourceStream find(Class<?> clazz, String
pathname)
+ {
+ throw new UnsupportedOperationException("Not
implemented");
+ }
+
+ @Override
+ public String toString()
+ {
+ return "customResourceFinder";
+ }
+ };
+ WebApplication wicketApplication = new DummyWebApplication() {
+ @Override
+ protected void init()
+ {
+ IResourceSettings resourceSettings =
getResourceSettings();
+
resourceSettings.setResourceFinder(customResourceFinder);
+ }
+ };
+ new MockWebApplication(wicketApplication, "foo");
+ IResourceFinder resourceFinderInApplication =
Application.get().getResourceSettings().getResourceFinder();
+ Assert.assertSame(customResourceFinder,
resourceFinderInApplication);
+ }
}