Mozilla/mozilla/java/webclient/build-tests.xml
edburns%acm.org 8a9f83057f This checkin has the basic functionality of NewWindowListener
re-implemented using the new event model.  It's a bit cleaner.

Next step is to uncomment the selection check at the end of
WindowCreatorTest.java.  This code currently causes the VM to crash.  I
also plan to do some testing on the chrome flags.

M classes_spec/org/mozilla/webclient/EventRegistration2.java

- deprecate {add,remove}NewWindowListener(), replace with
  setNewWindowListener().

M classes_spec/org/mozilla/webclient/NewWindowEvent.java

- added BrowserControl property, which the user sets into the event.

M classes_spec/org/mozilla/webclient/impl/wrapper_native/EventRegistrationImpl.java

- change newWindowListeners List ivar to newWindowListener ivar.

- fix {add,remove}NewWindowListener() to leverage setNewWindowListener()

- change nativeEventOccurred() to return an int instead of void.

- add boolean property nativeSetNewWindowListenerAttached()

M classes_spec/org/mozilla/webclient/impl/wrapper_native/NativeEventThread.java

- modify pushBlockingWCRunnable() to execute the runnable right away if
  we're already on the NativeEventThread.  This is necessary to allow
  re-entrancy.

M src_moz/EmbedEventListener.cpp
M src_moz/EmbedEventListener.h

- expose the mEventRegistration ivar via a getter.

M src_moz/EventRegistrationImpl.cpp
M src_moz/NativeBrowserControl.cpp
M src_moz/NativeBrowserControl.h

- add nativeSetNewWindowListenerAttached(), which calls through and sets
  it on the NativeBrowserControl.

M src_moz/WindowCreator.cpp

- implement CreateChromeWindow2, which is called when the browser needs
  a new window.

M src_share/jni_util.cpp
M src_share/jni_util.h

- change util_SendEventToJava() to return int.

M test/automated/src/classes/org/mozilla/webclient/WindowCreatorTest.java


git-svn-id: svn://10.0.0.236/trunk@167943 18797224-902f-48f8-a5cc-f745e15eee43
2005-01-18 15:20:52 +00:00

197 lines
6.7 KiB
XML

<!--
Copyright 2002 Sun Microsystems, Inc. All rights reserved.
SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
-->
<project name="Webclient Unit Tests" default="run.test" basedir=".">
<!--
This is a generic build.xml file for Ant that is used to run the
Webclient unit tests. This build file *must* be called from the
build.xml file in order to inherit most of it's needed properties
(See below for the list of these properties).
-->
<!-- ========== Prerequisite Properties =================================== -->
<!--
These properties MUST be set on the "ant" command line, the "antrc"
properties file in your home directory, or from settings in a superior
build.xml script.
build.home Base directory into which we are building
the Struts components.
servlet.jar The servlet jar (either 2.2 or 2.3)
cactus.jar The Cactus jar (either for Servlet API
2.2 or 2.3)
cactus.ant.jar The Cactus custom Ant tasks jar
httpclient.jar The Cactus httpclient jar
junit.jar The JUnit jar
tomcat.home The home directory of where Tomcat 4.0
is installed
compile.debug The debug mode for compilation
compile.deprecation The deprecation mode for compilation
compile.optimize The optimization mode for compilation
src.dir The location of the source directory
app.name The name of the Struts jar (without the
'.jar' suffix
-->
<!-- ========== Initialization Properties ================================= -->
<!-- ========== Derived Properties ======================================== -->
<!--
These property values are derived from values defined above, and
generally should NOT be overridden by command line settings
-->
<!-- Default value for debugging arguments is no. Override in
build.properties -->
<property name="debug.jvm.args" value=""/>
<!-- Source directory for tests -->
<property name="src.test.dir" value="${basedir}/test/automated/src/classes"/>
<property name="src.manual.test.dir" value="${basedir}/test/manual/src/classes"/>
<!-- Output directory for tests -->
<property name="out.test.dir" value="${build.home}/test"/>
<!-- Output directory for test data files -->
<property name="build.test" value="${basedir}/build.test"/>
<property name="native.waitForDebugger" value=""/>
<path id="test.classpath">
<pathelement location="${junit.jar}"/>
<pathelement location="${build.home}"/>
<pathelement location="${out.test.dir}/classes"/>
</path>
<!-- ========== Executable Targets ======================================== -->
<!--
Compile unit tests
-->
<target name="compile.test" depends="copy-test-data-files">
<echo message="${build.home}"/>
<mkdir dir="${out.test.dir}/classes"/>
<javac destdir="${out.test.dir}/classes"
debug="${compile.debug}"
optimize="${compile.optimize}"
deprecation="${compile.deprecation}">
<classpath refid="test.classpath"/>
<src path="${src.test.dir}"/>
<src path="${src.manual.test.dir}"/>
<patternset>
<exclude name="**/*Win32*.java" if="build.unix.classes"/>
</patternset>
<patternset>
<exclude name="**/*Gtk*.java" if="build.win32.classes"/>
</patternset>
</javac>
</target>
<target name="copy-test-data-files">
<!-- Copy Unit test static files. -->
<mkdir dir="${build.test}"/>
<copy todir="${build.test}">
<fileset dir="${basedir}/test/automated/src/test"/>
</copy>
<copy todir="${out.test.dir}/classes">
<fileset dir="${src.manual.test.dir}">
<include name="**/*.gif" />
<include name="**/*.png" />
</fileset>
</copy>
</target>
<target name="clean">
<delete dir="${out.test.dir}/classes"/>
<delete dir="${build.test}"/>
</target>
<target name="run.test" depends="compile.test">
<junit printsummary="yes" haltonfailure="yes" haltonerror="yes" fork="yes">
<jvmarg value="-Djava.library.path=${myenv.MOZILLA_FIVE_HOME}${PATH_SEP}${myenv.MOZILLA_FIVE_HOME}/components"/>
<jvmarg value="-DNSPR_LOG_MODULES=${myenv.NSPR_LOG_MODULES}"/>
<jvmarg value="-DNSPR_LOG_FILE=${myenv.NSPR_LOG_FILE}"/>
<jvmarg value="-DBROWSER_BIN_DIR=${myenv.MOZILLA_FIVE_HOME}"/>
<sysproperty key="native.waitForDebugger"
value="${native.waitForDebugger}"/>
<jvmarg line="${debug.jvm.args}"/>
<classpath refid="test.classpath"/>
<formatter type="plain" usefile="false"/>
<test name="org.mozilla.webclient.BrowserControlFactoryTest"/>
<test name="org.mozilla.webclient.ProfileManagerTest"/>
<test name="org.mozilla.webclient.BookmarksTest"/>
<test name="org.mozilla.webclient.PreferencesTest"/>
<test name="org.mozilla.webclient.impl.wrapper_native.WrapperFactoryImplTest"/>
<test name="org.mozilla.webclient.impl.WebclientFactoryImplTest"/>
<test name="org.mozilla.webclient.NavigationTest"/>
<test name="org.mozilla.webclient.HistoryTest"/>
<test name="org.mozilla.webclient.MouseListenerTest"/>
<test name="org.mozilla.webclient.KeyListenerTest"/>
<test name="org.mozilla.webclient.DocumentLoadListenerTest"/>
<test name="org.mozilla.webclient.WindowCreatorTest"/>
<!-- non running
<test name="org.mozilla.webclient.wrapper_native.gtk.TestGtkBrowserControlCanvas"/>
-->
</junit>
</target>
<target name="run.test.browser" depends="compile.test">
<java classname="org.mozilla.webclient.test.TestBrowser" fork="true">
<jvmarg value="-Djava.library.path=${myenv.MOZILLA_FIVE_HOME}${PATH_SEP}${myenv.MOZILLA_FIVE_HOME}/components"/>
<jvmarg value="-DNSPR_LOG_MODULES=${myenv.NSPR_LOG_MODULES}"/>
<jvmarg value="-DNSPR_LOG_FILE=${myenv.NSPR_LOG_FILE}"/>
<jvmarg value="-DBROWSER_BIN_DIR=${myenv.MOZILLA_FIVE_HOME}"/>
<sysproperty key="native.waitForDebugger"
value="${native.waitForDebugger}"/>
<jvmarg line="${debug.jvm.args}"/>
<classpath refid="test.classpath"/>
</java>
</target>
</project>