Run all remoteweb targets in parallel in a single JVM instead of serially across multiple JVMs.
Patch by: bobv
Review by: freeland, scottb (TBR)
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1953 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/common.ant.xml b/common.ant.xml
index 036441e..8a5afa2 100755
--- a/common.ant.xml
+++ b/common.ant.xml
@@ -94,11 +94,6 @@
<property name="gwt.junit.port" value="8888" />
<property name="gwt.junit.testcase.includes" value="**/*Suite.class"/>
- <!--
- Comma delimited list of host and path components on which to run remote browser testing.
- -->
- <property name="gwt.remote.browsers" value="" />
-
<!-- Pulls in tasks defined in ant-contrib, i.e. foreach -->
<taskdef resource="net/sf/antcontrib/antlib.xml">
diff --git a/user/build.xml b/user/build.xml
index dda881b..4e303eb 100755
--- a/user/build.xml
+++ b/user/build.xml
@@ -65,9 +65,10 @@
</gwt.checkstyle>
</target>
- <target name="remoteweb-test" description="Run a remoteweb test at the given host and path">
- <echo message="Performing remote browser testing at rmi://${gwt.remote.browser}" />
- <gwt.junit test.args="${test.args} -out www -web -remoteweb rmi://${gwt.remote.browser}" test.out="${junit.out}/${gwt.remote.browser}" test.cases="default.web.tests" />
+ <target name="remoteweb-test" description="Run a remoteweb test at the given host and path" if="gwt.remote.browsers">
+ <propertyregex property="gwt.remote.browsers" input="rmi://${gwt.remote.browsers}" regexp="," replace=",rmi://" global="true" />
+ <echo message="Performing remote browser testing at ${gwt.remote.browsers}" />
+ <gwt.junit test.args="${test.args} -out www -web -remoteweb ${gwt.remote.browsers}" test.out="${junit.out}/remoteweb" test.cases="default.web.tests" />
</target>
<target name="test.hosted" depends="compile, compile.tests" description="Run only hosted-mode tests for this project.">
@@ -87,14 +88,10 @@
-->
<limit failonerror="true" hours="1">
<parallel threadsPerProcessor="1">
+ <!-- remoteweb-test is a no-op unless gwt.remote.browsers is defined -->
+ <antcall target="remoteweb-test"/>
<antcall target="test.hosted"/>
-
<antcall target="test.web"/>
-
- <!--
- Run remote browser testing for the comma delimited list of remote browsers
- -->
- <foreach list="${gwt.remote.browsers}" delimiter="," parallel="true" maxThreads="1" target="remoteweb-test" param="gwt.remote.browser" />
</parallel>
</limit>
</target>