| <project name="user" default="build" basedir="."> |
| <property name="gwt.root" location=".." /> |
| <property name="project.tail" value="user" /> |
| <import file="${gwt.root}/common.ant.xml" /> |
| |
| <!-- |
| Default hosted mode test cases |
| --> |
| <fileset id="default.hosted.tests" dir="${javac.junit.out}" |
| includes="${gwt.junit.testcase.includes}"> |
| <!-- |
| Requires manual testing, because it generates intentional failures. |
| --> |
| <exclude name="com/google/gwt/junit/client/ParallelRemoteTest.class" /> |
| |
| <!-- |
| Causes a security dialog to popup and subsequently blocks testing |
| --> |
| <exclude name="com/google/gwt/user/client/ui/FormPanelTest.class" /> |
| |
| <!-- |
| Need to confirm with JGW if this should still be disabled |
| --> |
| <exclude name="com/google/gwt/user/client/ui/HistoryTest.class" /> |
| |
| <!-- |
| Safari regression: |
| Testcase: testPositioning took 7.514 sec |
| FAILED |
| expected=225 actual=207 |
| junit.framework.AssertionFailedError: expected=225 actual=207 |
| --> |
| <exclude name="com/google/gwt/user/client/ui/AbsolutePanelTest.class" /> |
| </fileset> |
| |
| <!-- |
| Default web mode test cases |
| --> |
| <fileset id="default.web.tests" dir="${javac.junit.out}" |
| includes="${gwt.junit.testcase.includes}"> |
| <!-- |
| Requires manual testing, because it generates intentional failures. |
| --> |
| <exclude name="com/google/gwt/junit/client/ParallelRemoteTest.class" /> |
| |
| <!-- |
| Causes a security dialog to popup and subsequently blocks testing |
| --> |
| <exclude name="com/google/gwt/user/client/ui/FormPanelTest.class" /> |
| |
| <!-- |
| Need to confirm with JGW if this should still be disabled |
| --> |
| <exclude name="com/google/gwt/user/client/ui/HistoryTest.class" /> |
| |
| <!-- |
| Safari Failures: |
| Testcase: testFunctionCaching took 0.112 sec |
| Caused an ERROR |
| JavaScript RangeError exception: Maximum call stack size exceeded. |
| com.google.gwt.core.client.JavaScriptException: JavaScript RangeError exception: Maximum call stack size exceeded. |
| |
| Linux Web Mode Failures: |
| Testcase: testFunctionCaching took 1.004 sec |
| Caused an ERROR |
| JavaScript InternalError exception: too much recursion |
| com.google.gwt.core.client.JavaScriptException: JavaScript InternalError exception: too much recursion |
| --> |
| <exclude name="com/google/gwt/dev/jjs/test/HostedTest.class" /> |
| |
| <!-- |
| Safari Failures: |
| Testcase: testRecursion took 1.003 sec |
| Caused an ERROR |
| JavaScript RangeError exception: Maximum call stack size exceeded. |
| com.google.gwt.core.client.JavaScriptException: JavaScript RangeError exception: Maximum call stack size exceeded. |
| --> |
| <exclude name="com/google/gwt/dev/jjs/test/MethodCallTest.class" /> |
| |
| <!-- |
| Safari Failures: |
| Testcase: testJso took 1.005 sec |
| Caused an ERROR |
| JavaScript RangeError exception: Maximum call stack size exceeded. |
| com.google.gwt.core.client.JavaScriptException: JavaScript RangeError exception: Maximum call stack size exceeded. |
| --> |
| <exclude name="com/google/gwt/dev/jjs/test/MiscellaneousTest.class" /> |
| |
| <!-- |
| Safari regression: |
| Testcase: testPositioning took 7.514 sec |
| FAILED |
| expected=225 actual=207 |
| junit.framework.AssertionFailedError: expected=225 actual=207 |
| --> |
| <exclude name="com/google/gwt/user/client/ui/AbsolutePanelTest.class" /> |
| </fileset> |
| |
| <!-- Platform shouldn't matter here, just picking one --> |
| <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" /> |
| |
| <target name="compile" description="Compile all class files"> |
| <mkdir dir="${javac.out}" /> |
| <gwt.javac> |
| <classpath> |
| <pathelement location="${gwt.tools.lib}/tomcat/servlet-api-2.4.jar" /> |
| <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" /> |
| <pathelement location="${gwt.tools.lib}/jfreechart/jfreechart-1.0.3.jar" /> |
| <pathelement location="${gwt.dev.jar}" /> |
| </classpath> |
| </gwt.javac> |
| |
| <!-- Build the BrowserManagerServer_Stub to allow remote browser testing --> |
| <rmic base="${javac.out}" |
| classname="com.google.gwt.junit.remote.BrowserManagerServer" |
| stubversion="1.2"/> |
| </target> |
| |
| <target name="compile.tests" description="Compiles the test code for this project"> |
| <mkdir dir="${javac.junit.out}" /> |
| <gwt.javac srcdir="test" destdir="${javac.junit.out}"> |
| <classpath> |
| <pathelement location="${javac.out}" /> |
| <pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" /> |
| <pathelement location="${gwt.dev.staging.jar}" /> |
| </classpath> |
| </gwt.javac> |
| </target> |
| |
| <target name="build" depends="compile" description="Build and package this project"> |
| <mkdir dir="${gwt.build.lib}" /> |
| <gwt.jar> |
| <fileset dir="src" excludes="**/package.html" /> |
| <fileset dir="super" excludes="**/package.html" /> |
| <fileset dir="${javac.out}" /> |
| <zipfileset src="${gwt.tools.lib}/tomcat/servlet-api-2.4.jar" /> |
| </gwt.jar> |
| </target> |
| |
| <target name="checkstyle" description="Static analysis of source"> |
| <gwt.checkstyle> |
| <fileset dir="src" /> |
| <fileset dir="super/com/google/gwt/emul" /> |
| <fileset dir="super/com/google/gwt/junit/translatable" /> |
| </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="-port ${gwt.junit.port} -out www -web -remoteweb rmi://${gwt.remote.browser}" test.out="${junit.out}/${gwt.remote.browser}" test.cases="default.web.tests" /> |
| </target> |
| |
| <target name="test.hosted" depends="compile, compile.tests" description="Run only hosted-mode tests for this project."> |
| <gwt.junit test.args="-port ${gwt.junit.port}" test.out="${junit.out}/${build.host.platform}-hosted-mode" test.cases="default.hosted.tests" /> |
| </target> |
| |
| <target name="test.web" depends="compile, compile.tests" description="Run only web-mode tests for this project."> |
| <gwt.junit test.args="-port ${gwt.junit.port} -out www -web" test.out="${junit.out}/${build.host.platform}-web-mode" test.cases="default.web.tests" /> |
| </target> |
| |
| <target name="test" depends="compile, compile.tests" description="Run hosted-mode, web-mode and remoteweb tests for this project."> |
| <property.ensure name="distro.built" location="${gwt.dev.staging.jar}" message="GWT must be built before performing any tests. This can be fixed by running ant in the ${gwt.root} directory." /> |
| |
| <!-- |
| Run hosted and web mode tests for the platform on which this build |
| is executing |
| --> |
| <parallel threadcount="1"> |
| <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> |
| </target> |
| |
| <target name="clean" description="Cleans this project's intermediate and output files"> |
| <delete dir="${project.build}" /> |
| <delete file="${project.lib}" /> |
| </target> |
| |
| </project> |