You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jc...@apache.org on 2007/10/31 14:26:43 UTC

svn commit: r590661 - in /wicket/trunk/jdk-1.4/wicket/src: main/java/org/apache/wicket/protocol/http/MockWebApplication.java main/java/org/apache/wicket/util/tester/BaseWicketTester.java test/java/org/apache/wicket/WicketTestCase.java

Author: jcompagner
Date: Wed Oct 31 06:26:43 2007
New Revision: 590661

URL: http://svn.apache.org/viewvc?rev=590661&view=rev
Log:
be able to test bookmarkable pages with parameters

Modified:
    wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
    wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java
    wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/WicketTestCase.java

Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java?rev=590661&r1=590660&r2=590661&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/MockWebApplication.java Wed Oct 31 06:26:43 2007
@@ -338,11 +338,22 @@
 	 */
 	public void processRequestCycle(final Class pageClass)
 	{
+		processRequestCycle(pageClass, null);
+	}
+
+	/**
+	 * Initialize a new WebRequestCycle and all its dependent objects
+	 * 
+	 * @param pageClass
+	 * @param params
+	 */
+	public void processRequestCycle(final Class pageClass, PageParameters params)
+	{
 		setupRequestAndResponse();
 		final WebRequestCycle cycle = createRequestCycle();
 		try
 		{
-			cycle.request(new BookmarkablePageRequestTarget(pageClass));
+			cycle.request(new BookmarkablePageRequestTarget(pageClass, params));
 		}
 		finally
 		{

Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java?rev=590661&r1=590660&r2=590661&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java Wed Oct 31 06:26:43 2007
@@ -288,6 +288,21 @@
 	}
 
 	/**
+	 * Renders a <code>Page</code> from its default constructor.
+	 * 
+	 * @param pageClass
+	 *            a test <code>Page</code> class with default constructor
+	 * @param parameters
+	 *            the parameters to use for the class.
+	 * @return the rendered <code>Page</code>
+	 */
+	public final Page startPage(Class pageClass, PageParameters parameters)
+	{
+		processRequestCycle(pageClass, parameters);
+		return getLastRenderedPage();
+	}
+
+	/**
 	 * Creates a {@link FormTester} for the <code>Form</code> at a given path, and fills all child
 	 * {@link org.apache.wicket.markup.html.form.FormComponent}s with blank <code>String</code>s.
 	 * 

Modified: wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/WicketTestCase.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/WicketTestCase.java?rev=590661&r1=590660&r2=590661&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/WicketTestCase.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/WicketTestCase.java Wed Oct 31 06:26:43 2007
@@ -85,6 +85,25 @@
 	}
 
 	/**
+	 * Use <code>-Dwicket.replace.expected.results=true</code> to automatically replace the
+	 * expected output file.
+	 * 
+	 * @param pageClass
+	 * @param parameters
+	 * @param filename
+	 * @throws Exception
+	 */
+	protected void executeTest(final Class pageClass, PageParameters parameters,
+			final String filename) throws Exception
+	{
+		System.out.println("=== " + pageClass.getName() + " ===");
+
+		tester.startPage(pageClass, parameters);
+		tester.assertRenderedPage(pageClass);
+		tester.assertResultPage(getClass(), filename);
+	}
+
+	/**
 	 * 
 	 * @param clazz
 	 * @param component