You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/03/03 00:30:26 UTC

svn commit: r632875 - /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java

Author: hlship
Date: Sun Mar  2 15:30:25 2008
New Revision: 632875

URL: http://svn.apache.org/viewvc?rev=632875&view=rev
Log:
TAPESTRY-1778: Allow extending the PageTester with extra modules for better integration with tapestry-spring

Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java?rev=632875&r1=632874&r2=632875&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java Sun Mar  2 15:30:25 2008
@@ -23,6 +23,7 @@
 import org.apache.tapestry.internal.services.*;
 import org.apache.tapestry.internal.test.*;
 import org.apache.tapestry.ioc.Registry;
+import org.apache.tapestry.ioc.def.ModuleDef;
 import static org.apache.tapestry.ioc.internal.util.CollectionFactory.newMap;
 import static org.apache.tapestry.ioc.internal.util.Defense.notNull;
 import org.apache.tapestry.ioc.services.SymbolProvider;
@@ -88,6 +89,7 @@
 
         initializer.addModules(PageTesterModule.class);
         initializer.addModules(moduleClasses);
+        initializer.addModules(provideExtraModuleDefs());
 
         _registry = initializer.getRegistry();
 
@@ -107,6 +109,16 @@
 
         _invokerRegistry = StrategyRegistry.newInstance(ComponentInvoker.class, map);
     }
+
+    /**
+     * Overridden in subclasses to provide additional module definitions beyond those normally located. This
+     * implementation returns an empty array.
+     */
+    protected ModuleDef[] provideExtraModuleDefs()
+    {
+        return new ModuleDef[0];
+    }
+
 
     /**
      * You should call it after use