1.1 --- a/remoting/build.sh Wed Apr 17 19:38:41 2013 +0200
1.2 +++ b/remoting/build.sh Wed Apr 17 19:44:36 2013 +0200
1.3 @@ -23,3 +23,5 @@
1.4
1.5 mkdir -p ide/local/release/index-server
1.6 (cd server/web/web.main; cp -r dist/* ../../../ide/local/release/index-server) || exit 1
1.7 +
1.8 +(cd server/tests; ./run-integration-tests) || exit 1
2.1 --- a/remoting/post-build.sh Wed Apr 17 19:38:41 2013 +0200
2.2 +++ b/remoting/post-build.sh Wed Apr 17 19:44:36 2013 +0200
2.3 @@ -9,3 +9,5 @@
2.4
2.5 (cd build; zip -r indexing-backend-feature-packed.zip indexing-backend) || exit 1
2.6 (cd build; zip -r indexing-backend-feature-packed-shortened.zip `find indexing-backend -type f | grep -v indexing-backend/indexer/enterprise/ | grep -v indexing-backend/indexer/apisupport/ | grep -v indexing-backend/indexer/cnd/ | grep -v indexing-backend/indexer/dlight/ | grep -v indexing-backend/indexer/harness/ | grep -v indexing-backend/indexer/ide/ | grep -v indexing-backend/indexer/java | grep -v indexing-backend/indexer/nb/ | grep -v indexing-backend/indexer/platform/ | grep -v indexing-backend/indexer/profiler/ | grep -v indexing-backend/indexer/websvccommon/`) || exit 1
2.7 +
2.8 +(cd server/tests; ./run-integration-tests) || exit 1
3.1 --- a/remoting/server/scripts/web.sh Wed Apr 17 19:38:41 2013 +0200
3.2 +++ b/remoting/server/scripts/web.sh Wed Apr 17 19:44:36 2013 +0200
3.3 @@ -1,8 +1,8 @@
3.4 #!/bin/bash
3.5 #XXX: unix only
3.6 -DIR=`dirname $0`
3.7 +DIR=$(readlink -m `dirname $0`)
3.8 classpath="$DIR/web/web.main.jar"
3.9 for jar in $DIR/web/lib/*.jar; do
3.10 classpath="$classpath:$jar"
3.11 done
3.12 -java $JACKPOT_WEB_OPTS -Djava.index.useMemCache=false -Xbootclasspath/p:$DIR/web/lib/nb-javac-api.jar:$DIR/web/lib/nb-javac-impl.jar -classpath "$classpath" web.main.WebMain "$@" "$DIR/web/public_html"
3.13 +exec java $JACKPOT_WEB_OPTS -Djava.index.useMemCache=false -Xbootclasspath/p:$DIR/web/lib/nb-javac-api.jar:$DIR/web/lib/nb-javac-impl.jar -classpath "$classpath" web.main.WebMain "$@" "$DIR/web/public_html"
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/remoting/server/tests/integration-data/example/build.xml Wed Apr 17 19:44:36 2013 +0200
4.3 @@ -0,0 +1,73 @@
4.4 +<?xml version="1.0" encoding="UTF-8"?>
4.5 +<!-- You may freely edit this file. See commented blocks below for -->
4.6 +<!-- some examples of how to customize the build. -->
4.7 +<!-- (If you delete it and reopen the project it will be recreated.) -->
4.8 +<!-- By default, only the Clean and Build commands use this build script. -->
4.9 +<!-- Commands such as Run, Debug, and Test only use this build script if -->
4.10 +<!-- the Compile on Save feature is turned off for the project. -->
4.11 +<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
4.12 +<!-- in the project's Project Properties dialog box.-->
4.13 +<project name="example" default="default" basedir=".">
4.14 + <description>Builds, tests, and runs the project example.</description>
4.15 + <import file="nbproject/build-impl.xml"/>
4.16 + <!--
4.17 +
4.18 + There exist several targets which are by default empty and which can be
4.19 + used for execution of your tasks. These targets are usually executed
4.20 + before and after some main targets. They are:
4.21 +
4.22 + -pre-init: called before initialization of project properties
4.23 + -post-init: called after initialization of project properties
4.24 + -pre-compile: called before javac compilation
4.25 + -post-compile: called after javac compilation
4.26 + -pre-compile-single: called before javac compilation of single file
4.27 + -post-compile-single: called after javac compilation of single file
4.28 + -pre-compile-test: called before javac compilation of JUnit tests
4.29 + -post-compile-test: called after javac compilation of JUnit tests
4.30 + -pre-compile-test-single: called before javac compilation of single JUnit test
4.31 + -post-compile-test-single: called after javac compilation of single JUunit test
4.32 + -pre-jar: called before JAR building
4.33 + -post-jar: called after JAR building
4.34 + -post-clean: called after cleaning build products
4.35 +
4.36 + (Targets beginning with '-' are not intended to be called on their own.)
4.37 +
4.38 + Example of inserting an obfuscator after compilation could look like this:
4.39 +
4.40 + <target name="-post-compile">
4.41 + <obfuscate>
4.42 + <fileset dir="${build.classes.dir}"/>
4.43 + </obfuscate>
4.44 + </target>
4.45 +
4.46 + For list of available properties check the imported
4.47 + nbproject/build-impl.xml file.
4.48 +
4.49 +
4.50 + Another way to customize the build is by overriding existing main targets.
4.51 + The targets of interest are:
4.52 +
4.53 + -init-macrodef-javac: defines macro for javac compilation
4.54 + -init-macrodef-junit: defines macro for junit execution
4.55 + -init-macrodef-debug: defines macro for class debugging
4.56 + -init-macrodef-java: defines macro for class execution
4.57 + -do-jar: JAR building
4.58 + run: execution of project
4.59 + -javadoc-build: Javadoc generation
4.60 + test-report: JUnit report generation
4.61 +
4.62 + An example of overriding the target for project execution could look like this:
4.63 +
4.64 + <target name="run" depends="example-impl.jar">
4.65 + <exec dir="bin" executable="launcher.exe">
4.66 + <arg file="${dist.jar}"/>
4.67 + </exec>
4.68 + </target>
4.69 +
4.70 + Notice that the overridden target depends on the jar target and not only on
4.71 + the compile target as the regular run target does. Again, for a list of available
4.72 + properties which you can use, check the target you are overriding in the
4.73 + nbproject/build-impl.xml file.
4.74 +
4.75 + -->
4.76 +</project>
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/remoting/server/tests/integration-data/example/manifest.mf Wed Apr 17 19:44:36 2013 +0200
5.3 @@ -0,0 +1,3 @@
5.4 +Manifest-Version: 1.0
5.5 +X-COMMENT: Main-Class will be added automatically by build
5.6 +
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/remoting/server/tests/integration-data/example/nbproject/build-impl.xml Wed Apr 17 19:44:36 2013 +0200
6.3 @@ -0,0 +1,1401 @@
6.4 +<?xml version="1.0" encoding="UTF-8"?>
6.5 +<!--
6.6 +*** GENERATED FROM project.xml - DO NOT EDIT ***
6.7 +*** EDIT ../build.xml INSTEAD ***
6.8 +
6.9 +For the purpose of easier reading the script
6.10 +is divided into following sections:
6.11 +
6.12 + - initialization
6.13 + - compilation
6.14 + - jar
6.15 + - execution
6.16 + - debugging
6.17 + - javadoc
6.18 + - test compilation
6.19 + - test execution
6.20 + - test debugging
6.21 + - applet
6.22 + - cleanup
6.23 +
6.24 + -->
6.25 +<project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="example-impl">
6.26 + <fail message="Please build using Ant 1.8.0 or higher.">
6.27 + <condition>
6.28 + <not>
6.29 + <antversion atleast="1.8.0"/>
6.30 + </not>
6.31 + </condition>
6.32 + </fail>
6.33 + <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
6.34 + <!--
6.35 + ======================
6.36 + INITIALIZATION SECTION
6.37 + ======================
6.38 + -->
6.39 + <target name="-pre-init">
6.40 + <!-- Empty placeholder for easier customization. -->
6.41 + <!-- You can override this target in the ../build.xml file. -->
6.42 + </target>
6.43 + <target depends="-pre-init" name="-init-private">
6.44 + <property file="nbproject/private/config.properties"/>
6.45 + <property file="nbproject/private/configs/${config}.properties"/>
6.46 + <property file="nbproject/private/private.properties"/>
6.47 + </target>
6.48 + <target depends="-pre-init,-init-private" name="-init-user">
6.49 + <property file="${user.properties.file}"/>
6.50 + <!-- The two properties below are usually overridden -->
6.51 + <!-- by the active platform. Just a fallback. -->
6.52 + <property name="default.javac.source" value="1.4"/>
6.53 + <property name="default.javac.target" value="1.4"/>
6.54 + </target>
6.55 + <target depends="-pre-init,-init-private,-init-user" name="-init-project">
6.56 + <property file="nbproject/configs/${config}.properties"/>
6.57 + <property file="nbproject/project.properties"/>
6.58 + </target>
6.59 + <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
6.60 + <available file="${manifest.file}" property="manifest.available"/>
6.61 + <condition property="splashscreen.available">
6.62 + <and>
6.63 + <not>
6.64 + <equals arg1="${application.splash}" arg2="" trim="true"/>
6.65 + </not>
6.66 + <available file="${application.splash}"/>
6.67 + </and>
6.68 + </condition>
6.69 + <condition property="main.class.available">
6.70 + <and>
6.71 + <isset property="main.class"/>
6.72 + <not>
6.73 + <equals arg1="${main.class}" arg2="" trim="true"/>
6.74 + </not>
6.75 + </and>
6.76 + </condition>
6.77 + <condition property="profile.available">
6.78 + <and>
6.79 + <isset property="javac.profile"/>
6.80 + <length length="0" string="${javac.profile}" when="greater"/>
6.81 + <matches pattern="1\.[89](\..*)?" string="${javac.source}"/>
6.82 + </and>
6.83 + </condition>
6.84 + <condition property="do.archive">
6.85 + <not>
6.86 + <istrue value="${jar.archive.disabled}"/>
6.87 + </not>
6.88 + </condition>
6.89 + <condition property="do.mkdist">
6.90 + <and>
6.91 + <isset property="do.archive"/>
6.92 + <isset property="libs.CopyLibs.classpath"/>
6.93 + <not>
6.94 + <istrue value="${mkdist.disabled}"/>
6.95 + </not>
6.96 + </and>
6.97 + </condition>
6.98 + <condition property="do.archive+manifest.available">
6.99 + <and>
6.100 + <isset property="manifest.available"/>
6.101 + <istrue value="${do.archive}"/>
6.102 + </and>
6.103 + </condition>
6.104 + <condition property="do.archive+main.class.available">
6.105 + <and>
6.106 + <isset property="main.class.available"/>
6.107 + <istrue value="${do.archive}"/>
6.108 + </and>
6.109 + </condition>
6.110 + <condition property="do.archive+splashscreen.available">
6.111 + <and>
6.112 + <isset property="splashscreen.available"/>
6.113 + <istrue value="${do.archive}"/>
6.114 + </and>
6.115 + </condition>
6.116 + <condition property="do.archive+profile.available">
6.117 + <and>
6.118 + <isset property="profile.available"/>
6.119 + <istrue value="${do.archive}"/>
6.120 + </and>
6.121 + </condition>
6.122 + <condition property="have.tests">
6.123 + <or>
6.124 + <available file="${test.src.dir}"/>
6.125 + </or>
6.126 + </condition>
6.127 + <condition property="have.sources">
6.128 + <or>
6.129 + <available file="${src.dir}"/>
6.130 + </or>
6.131 + </condition>
6.132 + <condition property="netbeans.home+have.tests">
6.133 + <and>
6.134 + <isset property="netbeans.home"/>
6.135 + <isset property="have.tests"/>
6.136 + </and>
6.137 + </condition>
6.138 + <condition property="no.javadoc.preview">
6.139 + <and>
6.140 + <isset property="javadoc.preview"/>
6.141 + <isfalse value="${javadoc.preview}"/>
6.142 + </and>
6.143 + </condition>
6.144 + <property name="run.jvmargs" value=""/>
6.145 + <property name="run.jvmargs.ide" value=""/>
6.146 + <property name="javac.compilerargs" value=""/>
6.147 + <property name="work.dir" value="${basedir}"/>
6.148 + <condition property="no.deps">
6.149 + <and>
6.150 + <istrue value="${no.dependencies}"/>
6.151 + </and>
6.152 + </condition>
6.153 + <property name="javac.debug" value="true"/>
6.154 + <property name="javadoc.preview" value="true"/>
6.155 + <property name="application.args" value=""/>
6.156 + <property name="source.encoding" value="${file.encoding}"/>
6.157 + <property name="runtime.encoding" value="${source.encoding}"/>
6.158 + <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
6.159 + <and>
6.160 + <isset property="javadoc.encoding"/>
6.161 + <not>
6.162 + <equals arg1="${javadoc.encoding}" arg2=""/>
6.163 + </not>
6.164 + </and>
6.165 + </condition>
6.166 + <property name="javadoc.encoding.used" value="${source.encoding}"/>
6.167 + <property name="includes" value="**"/>
6.168 + <property name="excludes" value=""/>
6.169 + <property name="do.depend" value="false"/>
6.170 + <condition property="do.depend.true">
6.171 + <istrue value="${do.depend}"/>
6.172 + </condition>
6.173 + <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
6.174 + <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
6.175 + <length length="0" string="${endorsed.classpath}" when="greater"/>
6.176 + </condition>
6.177 + <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">
6.178 + <isset property="profile.available"/>
6.179 + </condition>
6.180 + <condition else="false" property="jdkBug6558476">
6.181 + <and>
6.182 + <matches pattern="1\.[56]" string="${java.specification.version}"/>
6.183 + <not>
6.184 + <os family="unix"/>
6.185 + </not>
6.186 + </and>
6.187 + </condition>
6.188 + <property name="javac.fork" value="${jdkBug6558476}"/>
6.189 + <property name="jar.index" value="false"/>
6.190 + <property name="jar.index.metainf" value="${jar.index}"/>
6.191 + <property name="copylibs.rebase" value="true"/>
6.192 + <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
6.193 + <condition property="junit.available">
6.194 + <or>
6.195 + <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
6.196 + <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
6.197 + </or>
6.198 + </condition>
6.199 + <condition property="testng.available">
6.200 + <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
6.201 + </condition>
6.202 + <condition property="junit+testng.available">
6.203 + <and>
6.204 + <istrue value="${junit.available}"/>
6.205 + <istrue value="${testng.available}"/>
6.206 + </and>
6.207 + </condition>
6.208 + <condition else="testng" property="testng.mode" value="mixed">
6.209 + <istrue value="${junit+testng.available}"/>
6.210 + </condition>
6.211 + <condition else="" property="testng.debug.mode" value="-mixed">
6.212 + <istrue value="${junit+testng.available}"/>
6.213 + </condition>
6.214 + </target>
6.215 + <target name="-post-init">
6.216 + <!-- Empty placeholder for easier customization. -->
6.217 + <!-- You can override this target in the ../build.xml file. -->
6.218 + </target>
6.219 + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
6.220 + <fail unless="src.dir">Must set src.dir</fail>
6.221 + <fail unless="test.src.dir">Must set test.src.dir</fail>
6.222 + <fail unless="build.dir">Must set build.dir</fail>
6.223 + <fail unless="dist.dir">Must set dist.dir</fail>
6.224 + <fail unless="build.classes.dir">Must set build.classes.dir</fail>
6.225 + <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
6.226 + <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
6.227 + <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
6.228 + <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
6.229 + <fail unless="dist.jar">Must set dist.jar</fail>
6.230 + </target>
6.231 + <target name="-init-macrodef-property">
6.232 + <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
6.233 + <attribute name="name"/>
6.234 + <attribute name="value"/>
6.235 + <sequential>
6.236 + <property name="@{name}" value="${@{value}}"/>
6.237 + </sequential>
6.238 + </macrodef>
6.239 + </target>
6.240 + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
6.241 + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
6.242 + <attribute default="${src.dir}" name="srcdir"/>
6.243 + <attribute default="${build.classes.dir}" name="destdir"/>
6.244 + <attribute default="${javac.classpath}" name="classpath"/>
6.245 + <attribute default="${javac.processorpath}" name="processorpath"/>
6.246 + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
6.247 + <attribute default="${includes}" name="includes"/>
6.248 + <attribute default="${excludes}" name="excludes"/>
6.249 + <attribute default="${javac.debug}" name="debug"/>
6.250 + <attribute default="${empty.dir}" name="sourcepath"/>
6.251 + <attribute default="${empty.dir}" name="gensrcdir"/>
6.252 + <element name="customize" optional="true"/>
6.253 + <sequential>
6.254 + <property location="${build.dir}/empty" name="empty.dir"/>
6.255 + <mkdir dir="${empty.dir}"/>
6.256 + <mkdir dir="@{apgeneratedsrcdir}"/>
6.257 + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
6.258 + <src>
6.259 + <dirset dir="@{gensrcdir}" erroronmissingdir="false">
6.260 + <include name="*"/>
6.261 + </dirset>
6.262 + </src>
6.263 + <classpath>
6.264 + <path path="@{classpath}"/>
6.265 + </classpath>
6.266 + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
6.267 + <compilerarg line="${javac.profile.cmd.line.arg}"/>
6.268 + <compilerarg line="${javac.compilerargs}"/>
6.269 + <compilerarg value="-processorpath"/>
6.270 + <compilerarg path="@{processorpath}:${empty.dir}"/>
6.271 + <compilerarg line="${ap.processors.internal}"/>
6.272 + <compilerarg line="${annotation.processing.processor.options}"/>
6.273 + <compilerarg value="-s"/>
6.274 + <compilerarg path="@{apgeneratedsrcdir}"/>
6.275 + <compilerarg line="${ap.proc.none.internal}"/>
6.276 + <customize/>
6.277 + </javac>
6.278 + </sequential>
6.279 + </macrodef>
6.280 + </target>
6.281 + <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
6.282 + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
6.283 + <attribute default="${src.dir}" name="srcdir"/>
6.284 + <attribute default="${build.classes.dir}" name="destdir"/>
6.285 + <attribute default="${javac.classpath}" name="classpath"/>
6.286 + <attribute default="${javac.processorpath}" name="processorpath"/>
6.287 + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
6.288 + <attribute default="${includes}" name="includes"/>
6.289 + <attribute default="${excludes}" name="excludes"/>
6.290 + <attribute default="${javac.debug}" name="debug"/>
6.291 + <attribute default="${empty.dir}" name="sourcepath"/>
6.292 + <attribute default="${empty.dir}" name="gensrcdir"/>
6.293 + <element name="customize" optional="true"/>
6.294 + <sequential>
6.295 + <property location="${build.dir}/empty" name="empty.dir"/>
6.296 + <mkdir dir="${empty.dir}"/>
6.297 + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
6.298 + <src>
6.299 + <dirset dir="@{gensrcdir}" erroronmissingdir="false">
6.300 + <include name="*"/>
6.301 + </dirset>
6.302 + </src>
6.303 + <classpath>
6.304 + <path path="@{classpath}"/>
6.305 + </classpath>
6.306 + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
6.307 + <compilerarg line="${javac.profile.cmd.line.arg}"/>
6.308 + <compilerarg line="${javac.compilerargs}"/>
6.309 + <customize/>
6.310 + </javac>
6.311 + </sequential>
6.312 + </macrodef>
6.313 + </target>
6.314 + <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
6.315 + <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
6.316 + <attribute default="${src.dir}" name="srcdir"/>
6.317 + <attribute default="${build.classes.dir}" name="destdir"/>
6.318 + <attribute default="${javac.classpath}" name="classpath"/>
6.319 + <sequential>
6.320 + <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
6.321 + <classpath>
6.322 + <path path="@{classpath}"/>
6.323 + </classpath>
6.324 + </depend>
6.325 + </sequential>
6.326 + </macrodef>
6.327 + <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
6.328 + <attribute default="${build.classes.dir}" name="destdir"/>
6.329 + <sequential>
6.330 + <fail unless="javac.includes">Must set javac.includes</fail>
6.331 + <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
6.332 + <path>
6.333 + <filelist dir="@{destdir}" files="${javac.includes}"/>
6.334 + </path>
6.335 + <globmapper from="*.java" to="*.class"/>
6.336 + </pathconvert>
6.337 + <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
6.338 + <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
6.339 + <delete>
6.340 + <files includesfile="${javac.includesfile.binary}"/>
6.341 + </delete>
6.342 + <delete>
6.343 + <fileset file="${javac.includesfile.binary}"/>
6.344 + </delete>
6.345 + </sequential>
6.346 + </macrodef>
6.347 + </target>
6.348 + <target if="${junit.available}" name="-init-macrodef-junit-init">
6.349 + <condition else="false" property="nb.junit.batch" value="true">
6.350 + <and>
6.351 + <istrue value="${junit.available}"/>
6.352 + <not>
6.353 + <isset property="test.method"/>
6.354 + </not>
6.355 + </and>
6.356 + </condition>
6.357 + <condition else="false" property="nb.junit.single" value="true">
6.358 + <and>
6.359 + <istrue value="${junit.available}"/>
6.360 + <isset property="test.method"/>
6.361 + </and>
6.362 + </condition>
6.363 + </target>
6.364 + <target name="-init-test-properties">
6.365 + <property name="test.binaryincludes" value="<nothing>"/>
6.366 + <property name="test.binarytestincludes" value=""/>
6.367 + <property name="test.binaryexcludes" value=""/>
6.368 + </target>
6.369 + <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
6.370 + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
6.371 + <attribute default="${includes}" name="includes"/>
6.372 + <attribute default="${excludes}" name="excludes"/>
6.373 + <attribute default="**" name="testincludes"/>
6.374 + <attribute default="" name="testmethods"/>
6.375 + <element name="customize" optional="true"/>
6.376 + <sequential>
6.377 + <property name="junit.forkmode" value="perTest"/>
6.378 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
6.379 + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
6.380 + <syspropertyset>
6.381 + <propertyref prefix="test-sys-prop."/>
6.382 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.383 + </syspropertyset>
6.384 + <formatter type="brief" usefile="false"/>
6.385 + <formatter type="xml"/>
6.386 + <jvmarg value="-ea"/>
6.387 + <customize/>
6.388 + </junit>
6.389 + </sequential>
6.390 + </macrodef>
6.391 + </target>
6.392 + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
6.393 + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
6.394 + <attribute default="${includes}" name="includes"/>
6.395 + <attribute default="${excludes}" name="excludes"/>
6.396 + <attribute default="**" name="testincludes"/>
6.397 + <attribute default="" name="testmethods"/>
6.398 + <element name="customize" optional="true"/>
6.399 + <sequential>
6.400 + <property name="junit.forkmode" value="perTest"/>
6.401 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
6.402 + <batchtest todir="${build.test.results.dir}">
6.403 + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
6.404 + <filename name="@{testincludes}"/>
6.405 + </fileset>
6.406 + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
6.407 + <filename name="${test.binarytestincludes}"/>
6.408 + </fileset>
6.409 + </batchtest>
6.410 + <syspropertyset>
6.411 + <propertyref prefix="test-sys-prop."/>
6.412 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.413 + </syspropertyset>
6.414 + <formatter type="brief" usefile="false"/>
6.415 + <formatter type="xml"/>
6.416 + <jvmarg value="-ea"/>
6.417 + <customize/>
6.418 + </junit>
6.419 + </sequential>
6.420 + </macrodef>
6.421 + </target>
6.422 + <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
6.423 + <target if="${testng.available}" name="-init-macrodef-testng">
6.424 + <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
6.425 + <attribute default="${includes}" name="includes"/>
6.426 + <attribute default="${excludes}" name="excludes"/>
6.427 + <attribute default="**" name="testincludes"/>
6.428 + <attribute default="" name="testmethods"/>
6.429 + <element name="customize" optional="true"/>
6.430 + <sequential>
6.431 + <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
6.432 + <isset property="test.method"/>
6.433 + </condition>
6.434 + <union id="test.set">
6.435 + <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
6.436 + <filename name="@{testincludes}"/>
6.437 + </fileset>
6.438 + </union>
6.439 + <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
6.440 + <testng classfilesetref="test.set" failureProperty="tests.failed" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="example" testname="TestNG tests" workingDir="${work.dir}">
6.441 + <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
6.442 + <propertyset>
6.443 + <propertyref prefix="test-sys-prop."/>
6.444 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.445 + </propertyset>
6.446 + <customize/>
6.447 + </testng>
6.448 + </sequential>
6.449 + </macrodef>
6.450 + </target>
6.451 + <target name="-init-macrodef-test-impl">
6.452 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
6.453 + <attribute default="${includes}" name="includes"/>
6.454 + <attribute default="${excludes}" name="excludes"/>
6.455 + <attribute default="**" name="testincludes"/>
6.456 + <attribute default="" name="testmethods"/>
6.457 + <element implicit="true" name="customize" optional="true"/>
6.458 + <sequential>
6.459 + <echo>No tests executed.</echo>
6.460 + </sequential>
6.461 + </macrodef>
6.462 + </target>
6.463 + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
6.464 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
6.465 + <attribute default="${includes}" name="includes"/>
6.466 + <attribute default="${excludes}" name="excludes"/>
6.467 + <attribute default="**" name="testincludes"/>
6.468 + <attribute default="" name="testmethods"/>
6.469 + <element implicit="true" name="customize" optional="true"/>
6.470 + <sequential>
6.471 + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
6.472 + <customize/>
6.473 + </j2seproject3:junit>
6.474 + </sequential>
6.475 + </macrodef>
6.476 + </target>
6.477 + <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
6.478 + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
6.479 + <attribute default="${includes}" name="includes"/>
6.480 + <attribute default="${excludes}" name="excludes"/>
6.481 + <attribute default="**" name="testincludes"/>
6.482 + <attribute default="" name="testmethods"/>
6.483 + <element implicit="true" name="customize" optional="true"/>
6.484 + <sequential>
6.485 + <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
6.486 + <customize/>
6.487 + </j2seproject3:testng>
6.488 + </sequential>
6.489 + </macrodef>
6.490 + </target>
6.491 + <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
6.492 + <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
6.493 + <attribute default="${includes}" name="includes"/>
6.494 + <attribute default="${excludes}" name="excludes"/>
6.495 + <attribute default="**" name="testincludes"/>
6.496 + <attribute default="" name="testmethods"/>
6.497 + <sequential>
6.498 + <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
6.499 + <customize>
6.500 + <classpath>
6.501 + <path path="${run.test.classpath}"/>
6.502 + </classpath>
6.503 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
6.504 + <jvmarg line="${run.jvmargs}"/>
6.505 + <jvmarg line="${run.jvmargs.ide}"/>
6.506 + </customize>
6.507 + </j2seproject3:test-impl>
6.508 + </sequential>
6.509 + </macrodef>
6.510 + </target>
6.511 + <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
6.512 + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.513 + <attribute default="${includes}" name="includes"/>
6.514 + <attribute default="${excludes}" name="excludes"/>
6.515 + <attribute default="**" name="testincludes"/>
6.516 + <attribute default="" name="testmethods"/>
6.517 + <element name="customize" optional="true"/>
6.518 + <sequential>
6.519 + <property name="junit.forkmode" value="perTest"/>
6.520 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
6.521 + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
6.522 + <syspropertyset>
6.523 + <propertyref prefix="test-sys-prop."/>
6.524 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.525 + </syspropertyset>
6.526 + <formatter type="brief" usefile="false"/>
6.527 + <formatter type="xml"/>
6.528 + <jvmarg value="-ea"/>
6.529 + <jvmarg line="${debug-args-line}"/>
6.530 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
6.531 + <customize/>
6.532 + </junit>
6.533 + </sequential>
6.534 + </macrodef>
6.535 + </target>
6.536 + <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
6.537 + <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.538 + <attribute default="${includes}" name="includes"/>
6.539 + <attribute default="${excludes}" name="excludes"/>
6.540 + <attribute default="**" name="testincludes"/>
6.541 + <attribute default="" name="testmethods"/>
6.542 + <element name="customize" optional="true"/>
6.543 + <sequential>
6.544 + <property name="junit.forkmode" value="perTest"/>
6.545 + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
6.546 + <batchtest todir="${build.test.results.dir}">
6.547 + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
6.548 + <filename name="@{testincludes}"/>
6.549 + </fileset>
6.550 + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
6.551 + <filename name="${test.binarytestincludes}"/>
6.552 + </fileset>
6.553 + </batchtest>
6.554 + <syspropertyset>
6.555 + <propertyref prefix="test-sys-prop."/>
6.556 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.557 + </syspropertyset>
6.558 + <formatter type="brief" usefile="false"/>
6.559 + <formatter type="xml"/>
6.560 + <jvmarg value="-ea"/>
6.561 + <jvmarg line="${debug-args-line}"/>
6.562 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
6.563 + <customize/>
6.564 + </junit>
6.565 + </sequential>
6.566 + </macrodef>
6.567 + </target>
6.568 + <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
6.569 + <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
6.570 + <attribute default="${includes}" name="includes"/>
6.571 + <attribute default="${excludes}" name="excludes"/>
6.572 + <attribute default="**" name="testincludes"/>
6.573 + <attribute default="" name="testmethods"/>
6.574 + <element implicit="true" name="customize" optional="true"/>
6.575 + <sequential>
6.576 + <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
6.577 + <customize/>
6.578 + </j2seproject3:junit-debug>
6.579 + </sequential>
6.580 + </macrodef>
6.581 + </target>
6.582 + <target if="${testng.available}" name="-init-macrodef-testng-debug">
6.583 + <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.584 + <attribute default="${main.class}" name="testClass"/>
6.585 + <attribute default="" name="testMethod"/>
6.586 + <element name="customize2" optional="true"/>
6.587 + <sequential>
6.588 + <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
6.589 + <isset property="test.method"/>
6.590 + </condition>
6.591 + <condition else="-suitename example -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
6.592 + <matches pattern=".*\.xml" string="@{testClass}"/>
6.593 + </condition>
6.594 + <delete dir="${build.test.results.dir}" quiet="true"/>
6.595 + <mkdir dir="${build.test.results.dir}"/>
6.596 + <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
6.597 + <customize>
6.598 + <customize2/>
6.599 + <jvmarg value="-ea"/>
6.600 + <arg line="${testng.debug.mode}"/>
6.601 + <arg line="-d ${build.test.results.dir}"/>
6.602 + <arg line="-listener org.testng.reporters.VerboseReporter"/>
6.603 + <arg line="${testng.cmd.args}"/>
6.604 + </customize>
6.605 + </j2seproject3:debug>
6.606 + </sequential>
6.607 + </macrodef>
6.608 + </target>
6.609 + <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
6.610 + <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
6.611 + <attribute default="${main.class}" name="testClass"/>
6.612 + <attribute default="" name="testMethod"/>
6.613 + <element implicit="true" name="customize2" optional="true"/>
6.614 + <sequential>
6.615 + <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
6.616 + <customize2/>
6.617 + </j2seproject3:testng-debug>
6.618 + </sequential>
6.619 + </macrodef>
6.620 + </target>
6.621 + <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
6.622 + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.623 + <attribute default="${includes}" name="includes"/>
6.624 + <attribute default="${excludes}" name="excludes"/>
6.625 + <attribute default="**" name="testincludes"/>
6.626 + <attribute default="" name="testmethods"/>
6.627 + <attribute default="${main.class}" name="testClass"/>
6.628 + <attribute default="" name="testMethod"/>
6.629 + <sequential>
6.630 + <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
6.631 + <customize>
6.632 + <classpath>
6.633 + <path path="${run.test.classpath}"/>
6.634 + </classpath>
6.635 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
6.636 + <jvmarg line="${run.jvmargs}"/>
6.637 + <jvmarg line="${run.jvmargs.ide}"/>
6.638 + </customize>
6.639 + </j2seproject3:test-debug-impl>
6.640 + </sequential>
6.641 + </macrodef>
6.642 + </target>
6.643 + <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
6.644 + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.645 + <attribute default="${includes}" name="includes"/>
6.646 + <attribute default="${excludes}" name="excludes"/>
6.647 + <attribute default="**" name="testincludes"/>
6.648 + <attribute default="" name="testmethods"/>
6.649 + <attribute default="${main.class}" name="testClass"/>
6.650 + <attribute default="" name="testMethod"/>
6.651 + <sequential>
6.652 + <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
6.653 + <customize2>
6.654 + <syspropertyset>
6.655 + <propertyref prefix="test-sys-prop."/>
6.656 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.657 + </syspropertyset>
6.658 + </customize2>
6.659 + </j2seproject3:testng-debug-impl>
6.660 + </sequential>
6.661 + </macrodef>
6.662 + </target>
6.663 + <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
6.664 + <!--
6.665 + pre NB7.2 profiling section; consider it deprecated
6.666 + -->
6.667 + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
6.668 + <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
6.669 + <!-- Empty placeholder for easier customization. -->
6.670 + <!-- You can override this target in the ../build.xml file. -->
6.671 + </target>
6.672 + <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
6.673 + <!-- Empty placeholder for easier customization. -->
6.674 + <!-- You can override this target in the ../build.xml file. -->
6.675 + </target>
6.676 + <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
6.677 + <macrodef name="resolve">
6.678 + <attribute name="name"/>
6.679 + <attribute name="value"/>
6.680 + <sequential>
6.681 + <property name="@{name}" value="${env.@{value}}"/>
6.682 + </sequential>
6.683 + </macrodef>
6.684 + <macrodef name="profile">
6.685 + <attribute default="${main.class}" name="classname"/>
6.686 + <element name="customize" optional="true"/>
6.687 + <sequential>
6.688 + <property environment="env"/>
6.689 + <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
6.690 + <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">
6.691 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
6.692 + <jvmarg value="${profiler.info.jvmargs.agent}"/>
6.693 + <jvmarg line="${profiler.info.jvmargs}"/>
6.694 + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
6.695 + <arg line="${application.args}"/>
6.696 + <classpath>
6.697 + <path path="${run.classpath}"/>
6.698 + </classpath>
6.699 + <syspropertyset>
6.700 + <propertyref prefix="run-sys-prop."/>
6.701 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
6.702 + </syspropertyset>
6.703 + <customize/>
6.704 + </java>
6.705 + </sequential>
6.706 + </macrodef>
6.707 + </target>
6.708 + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
6.709 + <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
6.710 + <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
6.711 + </target>
6.712 + <!--
6.713 + end of pre NB7.2 profiling section
6.714 + -->
6.715 + <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
6.716 + <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
6.717 + <attribute default="${main.class}" name="name"/>
6.718 + <attribute default="${debug.classpath}" name="classpath"/>
6.719 + <attribute default="" name="stopclassname"/>
6.720 + <sequential>
6.721 + <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
6.722 + <classpath>
6.723 + <path path="@{classpath}"/>
6.724 + </classpath>
6.725 + </nbjpdastart>
6.726 + </sequential>
6.727 + </macrodef>
6.728 + <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
6.729 + <attribute default="${build.classes.dir}" name="dir"/>
6.730 + <sequential>
6.731 + <nbjpdareload>
6.732 + <fileset dir="@{dir}" includes="${fix.classes}">
6.733 + <include name="${fix.includes}*.class"/>
6.734 + </fileset>
6.735 + </nbjpdareload>
6.736 + </sequential>
6.737 + </macrodef>
6.738 + </target>
6.739 + <target name="-init-debug-args">
6.740 + <property name="version-output" value="java version "${ant.java.version}"/>
6.741 + <condition property="have-jdk-older-than-1.4">
6.742 + <or>
6.743 + <contains string="${version-output}" substring="java version "1.0"/>
6.744 + <contains string="${version-output}" substring="java version "1.1"/>
6.745 + <contains string="${version-output}" substring="java version "1.2"/>
6.746 + <contains string="${version-output}" substring="java version "1.3"/>
6.747 + </or>
6.748 + </condition>
6.749 + <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
6.750 + <istrue value="${have-jdk-older-than-1.4}"/>
6.751 + </condition>
6.752 + <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
6.753 + <os family="windows"/>
6.754 + </condition>
6.755 + <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
6.756 + <isset property="debug.transport"/>
6.757 + </condition>
6.758 + </target>
6.759 + <target depends="-init-debug-args" name="-init-macrodef-debug">
6.760 + <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
6.761 + <attribute default="${main.class}" name="classname"/>
6.762 + <attribute default="${debug.classpath}" name="classpath"/>
6.763 + <element name="customize" optional="true"/>
6.764 + <sequential>
6.765 + <java classname="@{classname}" dir="${work.dir}" fork="true">
6.766 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
6.767 + <jvmarg line="${debug-args-line}"/>
6.768 + <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
6.769 + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
6.770 + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
6.771 + <jvmarg line="${run.jvmargs}"/>
6.772 + <jvmarg line="${run.jvmargs.ide}"/>
6.773 + <classpath>
6.774 + <path path="@{classpath}"/>
6.775 + </classpath>
6.776 + <syspropertyset>
6.777 + <propertyref prefix="run-sys-prop."/>
6.778 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
6.779 + </syspropertyset>
6.780 + <customize/>
6.781 + </java>
6.782 + </sequential>
6.783 + </macrodef>
6.784 + </target>
6.785 + <target name="-init-macrodef-java">
6.786 + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
6.787 + <attribute default="${main.class}" name="classname"/>
6.788 + <attribute default="${run.classpath}" name="classpath"/>
6.789 + <attribute default="jvm" name="jvm"/>
6.790 + <element name="customize" optional="true"/>
6.791 + <sequential>
6.792 + <java classname="@{classname}" dir="${work.dir}" fork="true">
6.793 + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
6.794 + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
6.795 + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
6.796 + <jvmarg line="${run.jvmargs}"/>
6.797 + <jvmarg line="${run.jvmargs.ide}"/>
6.798 + <classpath>
6.799 + <path path="@{classpath}"/>
6.800 + </classpath>
6.801 + <syspropertyset>
6.802 + <propertyref prefix="run-sys-prop."/>
6.803 + <mapper from="run-sys-prop.*" to="*" type="glob"/>
6.804 + </syspropertyset>
6.805 + <customize/>
6.806 + </java>
6.807 + </sequential>
6.808 + </macrodef>
6.809 + </target>
6.810 + <target name="-init-macrodef-copylibs">
6.811 + <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
6.812 + <attribute default="${manifest.file}" name="manifest"/>
6.813 + <element name="customize" optional="true"/>
6.814 + <sequential>
6.815 + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
6.816 + <pathconvert property="run.classpath.without.build.classes.dir">
6.817 + <path path="${run.classpath}"/>
6.818 + <map from="${build.classes.dir.resolved}" to=""/>
6.819 + </pathconvert>
6.820 + <pathconvert pathsep=" " property="jar.classpath">
6.821 + <path path="${run.classpath.without.build.classes.dir}"/>
6.822 + <chainedmapper>
6.823 + <flattenmapper/>
6.824 + <filtermapper>
6.825 + <replacestring from=" " to="%20"/>
6.826 + </filtermapper>
6.827 + <globmapper from="*" to="lib/*"/>
6.828 + </chainedmapper>
6.829 + </pathconvert>
6.830 + <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
6.831 + <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
6.832 + <fileset dir="${build.classes.dir}"/>
6.833 + <manifest>
6.834 + <attribute name="Class-Path" value="${jar.classpath}"/>
6.835 + <customize/>
6.836 + </manifest>
6.837 + </copylibs>
6.838 + </sequential>
6.839 + </macrodef>
6.840 + </target>
6.841 + <target name="-init-presetdef-jar">
6.842 + <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
6.843 + <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">
6.844 + <j2seproject1:fileset dir="${build.classes.dir}"/>
6.845 + </jar>
6.846 + </presetdef>
6.847 + </target>
6.848 + <target name="-init-ap-cmdline-properties">
6.849 + <property name="annotation.processing.enabled" value="true"/>
6.850 + <property name="annotation.processing.processors.list" value=""/>
6.851 + <property name="annotation.processing.processor.options" value=""/>
6.852 + <property name="annotation.processing.run.all.processors" value="true"/>
6.853 + <property name="javac.processorpath" value="${javac.classpath}"/>
6.854 + <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
6.855 + <condition property="ap.supported.internal" value="true">
6.856 + <not>
6.857 + <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
6.858 + </not>
6.859 + </condition>
6.860 + </target>
6.861 + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
6.862 + <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
6.863 + <isfalse value="${annotation.processing.run.all.processors}"/>
6.864 + </condition>
6.865 + <condition else="" property="ap.proc.none.internal" value="-proc:none">
6.866 + <isfalse value="${annotation.processing.enabled}"/>
6.867 + </condition>
6.868 + </target>
6.869 + <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
6.870 + <property name="ap.cmd.line.internal" value=""/>
6.871 + </target>
6.872 + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>
6.873 + <!--
6.874 + ===================
6.875 + COMPILATION SECTION
6.876 + ===================
6.877 + -->
6.878 + <target name="-deps-jar-init" unless="built-jar.properties">
6.879 + <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
6.880 + <delete file="${built-jar.properties}" quiet="true"/>
6.881 + </target>
6.882 + <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
6.883 + <echo level="warn" message="Cycle detected: example was already built"/>
6.884 + </target>
6.885 + <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
6.886 + <mkdir dir="${build.dir}"/>
6.887 + <touch file="${built-jar.properties}" verbose="false"/>
6.888 + <property file="${built-jar.properties}" prefix="already.built.jar."/>
6.889 + <antcall target="-warn-already-built-jar"/>
6.890 + <propertyfile file="${built-jar.properties}">
6.891 + <entry key="${basedir}" value=""/>
6.892 + </propertyfile>
6.893 + </target>
6.894 + <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
6.895 + <target depends="init" name="-check-automatic-build">
6.896 + <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
6.897 + </target>
6.898 + <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
6.899 + <antcall target="clean"/>
6.900 + </target>
6.901 + <target depends="init,deps-jar" name="-pre-pre-compile">
6.902 + <mkdir dir="${build.classes.dir}"/>
6.903 + </target>
6.904 + <target name="-pre-compile">
6.905 + <!-- Empty placeholder for easier customization. -->
6.906 + <!-- You can override this target in the ../build.xml file. -->
6.907 + </target>
6.908 + <target if="do.depend.true" name="-compile-depend">
6.909 + <pathconvert property="build.generated.subdirs">
6.910 + <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
6.911 + <include name="*"/>
6.912 + </dirset>
6.913 + </pathconvert>
6.914 + <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/>
6.915 + </target>
6.916 + <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
6.917 + <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
6.918 + <copy todir="${build.classes.dir}">
6.919 + <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
6.920 + </copy>
6.921 + </target>
6.922 + <target if="has.persistence.xml" name="-copy-persistence-xml">
6.923 + <mkdir dir="${build.classes.dir}/META-INF"/>
6.924 + <copy todir="${build.classes.dir}/META-INF">
6.925 + <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>
6.926 + </copy>
6.927 + </target>
6.928 + <target name="-post-compile">
6.929 + <!-- Empty placeholder for easier customization. -->
6.930 + <!-- You can override this target in the ../build.xml file. -->
6.931 + </target>
6.932 + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
6.933 + <target name="-pre-compile-single">
6.934 + <!-- Empty placeholder for easier customization. -->
6.935 + <!-- You can override this target in the ../build.xml file. -->
6.936 + </target>
6.937 + <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
6.938 + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
6.939 + <j2seproject3:force-recompile/>
6.940 + <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/>
6.941 + </target>
6.942 + <target name="-post-compile-single">
6.943 + <!-- Empty placeholder for easier customization. -->
6.944 + <!-- You can override this target in the ../build.xml file. -->
6.945 + </target>
6.946 + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
6.947 + <!--
6.948 + ====================
6.949 + JAR BUILDING SECTION
6.950 + ====================
6.951 + -->
6.952 + <target depends="init" name="-pre-pre-jar">
6.953 + <dirname file="${dist.jar}" property="dist.jar.dir"/>
6.954 + <mkdir dir="${dist.jar.dir}"/>
6.955 + </target>
6.956 + <target name="-pre-jar">
6.957 + <!-- Empty placeholder for easier customization. -->
6.958 + <!-- You can override this target in the ../build.xml file. -->
6.959 + </target>
6.960 + <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available">
6.961 + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
6.962 + <touch file="${tmp.manifest.file}" verbose="false"/>
6.963 + </target>
6.964 + <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest">
6.965 + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
6.966 + <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
6.967 + </target>
6.968 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass">
6.969 + <manifest file="${tmp.manifest.file}" mode="update">
6.970 + <attribute name="Main-Class" value="${main.class}"/>
6.971 + </manifest>
6.972 + </target>
6.973 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile">
6.974 + <manifest file="${tmp.manifest.file}" mode="update">
6.975 + <attribute name="Profile" value="${javac.profile}"/>
6.976 + </manifest>
6.977 + </target>
6.978 + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen">
6.979 + <basename file="${application.splash}" property="splashscreen.basename"/>
6.980 + <mkdir dir="${build.classes.dir}/META-INF"/>
6.981 + <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
6.982 + <manifest file="${tmp.manifest.file}" mode="update">
6.983 + <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
6.984 + </manifest>
6.985 + </target>
6.986 + <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.mkdist" name="-do-jar-copylibs">
6.987 + <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
6.988 + <echo level="info">To run this application from the command line without Ant, try:</echo>
6.989 + <property location="${dist.jar}" name="dist.jar.resolved"/>
6.990 + <echo level="info">java -jar "${dist.jar.resolved}"</echo>
6.991 + </target>
6.992 + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.archive" name="-do-jar-jar" unless="do.mkdist">
6.993 + <j2seproject1:jar manifest="${tmp.manifest.file}"/>
6.994 + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
6.995 + <property location="${dist.jar}" name="dist.jar.resolved"/>
6.996 + <pathconvert property="run.classpath.with.dist.jar">
6.997 + <path path="${run.classpath}"/>
6.998 + <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
6.999 + </pathconvert>
6.1000 + <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} ${main.class}">
6.1001 + <isset property="main.class.available"/>
6.1002 + </condition>
6.1003 + <condition else="debug" property="jar.usage.level" value="info">
6.1004 + <isset property="main.class.available"/>
6.1005 + </condition>
6.1006 + <echo level="${jar.usage.level}" message="${jar.usage.message}"/>
6.1007 + </target>
6.1008 + <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest">
6.1009 + <delete>
6.1010 + <fileset file="${tmp.manifest.file}"/>
6.1011 + </delete>
6.1012 + </target>
6.1013 + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/>
6.1014 + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/>
6.1015 + <target name="-post-jar">
6.1016 + <!-- Empty placeholder for easier customization. -->
6.1017 + <!-- You can override this target in the ../build.xml file. -->
6.1018 + </target>
6.1019 + <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/>
6.1020 + <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/>
6.1021 + <!--
6.1022 + =================
6.1023 + EXECUTION SECTION
6.1024 + =================
6.1025 + -->
6.1026 + <target depends="init,compile" description="Run a main class." name="run">
6.1027 + <j2seproject1:java>
6.1028 + <customize>
6.1029 + <arg line="${application.args}"/>
6.1030 + </customize>
6.1031 + </j2seproject1:java>
6.1032 + </target>
6.1033 + <target name="-do-not-recompile">
6.1034 + <property name="javac.includes.binary" value=""/>
6.1035 + </target>
6.1036 + <target depends="init,compile-single" name="run-single">
6.1037 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
6.1038 + <j2seproject1:java classname="${run.class}"/>
6.1039 + </target>
6.1040 + <target depends="init,compile-test-single" name="run-test-with-main">
6.1041 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
6.1042 + <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
6.1043 + </target>
6.1044 + <!--
6.1045 + =================
6.1046 + DEBUGGING SECTION
6.1047 + =================
6.1048 + -->
6.1049 + <target depends="init" if="netbeans.home" name="-debug-start-debugger">
6.1050 + <j2seproject1:nbjpdastart name="${debug.class}"/>
6.1051 + </target>
6.1052 + <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
6.1053 + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
6.1054 + </target>
6.1055 + <target depends="init,compile" name="-debug-start-debuggee">
6.1056 + <j2seproject3:debug>
6.1057 + <customize>
6.1058 + <arg line="${application.args}"/>
6.1059 + </customize>
6.1060 + </j2seproject3:debug>
6.1061 + </target>
6.1062 + <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
6.1063 + <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
6.1064 + <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
6.1065 + </target>
6.1066 + <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
6.1067 + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
6.1068 + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
6.1069 + <j2seproject3:debug classname="${debug.class}"/>
6.1070 + </target>
6.1071 + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
6.1072 + <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
6.1073 + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
6.1074 + <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
6.1075 + </target>
6.1076 + <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
6.1077 + <target depends="init" name="-pre-debug-fix">
6.1078 + <fail unless="fix.includes">Must set fix.includes</fail>
6.1079 + <property name="javac.includes" value="${fix.includes}.java"/>
6.1080 + </target>
6.1081 + <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
6.1082 + <j2seproject1:nbjpdareload/>
6.1083 + </target>
6.1084 + <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
6.1085 + <!--
6.1086 + =================
6.1087 + PROFILING SECTION
6.1088 + =================
6.1089 + -->
6.1090 + <!--
6.1091 + pre NB7.2 profiler integration
6.1092 + -->
6.1093 + <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
6.1094 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
6.1095 + <nbprofiledirect>
6.1096 + <classpath>
6.1097 + <path path="${run.classpath}"/>
6.1098 + </classpath>
6.1099 + </nbprofiledirect>
6.1100 + <profile/>
6.1101 + </target>
6.1102 + <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
6.1103 + <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
6.1104 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
6.1105 + <nbprofiledirect>
6.1106 + <classpath>
6.1107 + <path path="${run.classpath}"/>
6.1108 + </classpath>
6.1109 + </nbprofiledirect>
6.1110 + <profile classname="${profile.class}"/>
6.1111 + </target>
6.1112 + <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
6.1113 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
6.1114 + <nbprofiledirect>
6.1115 + <classpath>
6.1116 + <path path="${run.classpath}"/>
6.1117 + </classpath>
6.1118 + </nbprofiledirect>
6.1119 + <profile classname="sun.applet.AppletViewer">
6.1120 + <customize>
6.1121 + <arg value="${applet.url}"/>
6.1122 + </customize>
6.1123 + </profile>
6.1124 + </target>
6.1125 + <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
6.1126 + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
6.1127 + <nbprofiledirect>
6.1128 + <classpath>
6.1129 + <path path="${run.test.classpath}"/>
6.1130 + </classpath>
6.1131 + </nbprofiledirect>
6.1132 + <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
6.1133 + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
6.1134 + <jvmarg value="${profiler.info.jvmargs.agent}"/>
6.1135 + <jvmarg line="${profiler.info.jvmargs}"/>
6.1136 + <test name="${profile.class}"/>
6.1137 + <classpath>
6.1138 + <path path="${run.test.classpath}"/>
6.1139 + </classpath>
6.1140 + <syspropertyset>
6.1141 + <propertyref prefix="test-sys-prop."/>
6.1142 + <mapper from="test-sys-prop.*" to="*" type="glob"/>
6.1143 + </syspropertyset>
6.1144 + <formatter type="brief" usefile="false"/>
6.1145 + <formatter type="xml"/>
6.1146 + </junit>
6.1147 + </target>
6.1148 + <!--
6.1149 + end of pre NB72 profiling section
6.1150 + -->
6.1151 + <target if="netbeans.home" name="-profile-check">
6.1152 + <condition property="profiler.configured">
6.1153 + <or>
6.1154 + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
6.1155 + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
6.1156 + </or>
6.1157 + </condition>
6.1158 + </target>
6.1159 + <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
6.1160 + <startprofiler/>
6.1161 + <antcall target="run"/>
6.1162 + </target>
6.1163 + <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent">
6.1164 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
6.1165 + <startprofiler/>
6.1166 + <antcall target="run-single"/>
6.1167 + </target>
6.1168 + <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
6.1169 + <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
6.1170 + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
6.1171 + <startprofiler/>
6.1172 + <antcall target="test-single"/>
6.1173 + </target>
6.1174 + <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
6.1175 + <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
6.1176 + <startprofiler/>
6.1177 + <antcal target="run-test-with-main"/>
6.1178 + </target>
6.1179 + <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
6.1180 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
6.1181 + <startprofiler/>
6.1182 + <antcall target="run-applet"/>
6.1183 + </target>
6.1184 + <!--
6.1185 + ===============
6.1186 + JAVADOC SECTION
6.1187 + ===============
6.1188 + -->
6.1189 + <target depends="init" if="have.sources" name="-javadoc-build">
6.1190 + <mkdir dir="${dist.javadoc.dir}"/>
6.1191 + <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
6.1192 + <and>
6.1193 + <isset property="endorsed.classpath.cmd.line.arg"/>
6.1194 + <not>
6.1195 + <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
6.1196 + </not>
6.1197 + </and>
6.1198 + </condition>
6.1199 + <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
6.1200 + <classpath>
6.1201 + <path path="${javac.classpath}"/>
6.1202 + </classpath>
6.1203 + <fileset dir="${src.dir}" excludes="*.java,${excludes}" includes="${includes}">
6.1204 + <filename name="**/*.java"/>
6.1205 + </fileset>
6.1206 + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
6.1207 + <include name="**/*.java"/>
6.1208 + <exclude name="*.java"/>
6.1209 + </fileset>
6.1210 + <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
6.1211 + </javadoc>
6.1212 + <copy todir="${dist.javadoc.dir}">
6.1213 + <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
6.1214 + <filename name="**/doc-files/**"/>
6.1215 + </fileset>
6.1216 + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
6.1217 + <include name="**/doc-files/**"/>
6.1218 + </fileset>
6.1219 + </copy>
6.1220 + </target>
6.1221 + <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
6.1222 + <nbbrowse file="${dist.javadoc.dir}/index.html"/>
6.1223 + </target>
6.1224 + <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
6.1225 + <!--
6.1226 + =========================
6.1227 + TEST COMPILATION SECTION
6.1228 + =========================
6.1229 + -->
6.1230 + <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
6.1231 + <mkdir dir="${build.test.classes.dir}"/>
6.1232 + </target>
6.1233 + <target name="-pre-compile-test">
6.1234 + <!-- Empty placeholder for easier customization. -->
6.1235 + <!-- You can override this target in the ../build.xml file. -->
6.1236 + </target>
6.1237 + <target if="do.depend.true" name="-compile-test-depend">
6.1238 + <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
6.1239 + </target>
6.1240 + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
6.1241 + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/>
6.1242 + <copy todir="${build.test.classes.dir}">
6.1243 + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
6.1244 + </copy>
6.1245 + </target>
6.1246 + <target name="-post-compile-test">
6.1247 + <!-- Empty placeholder for easier customization. -->
6.1248 + <!-- You can override this target in the ../build.xml file. -->
6.1249 + </target>
6.1250 + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
6.1251 + <target name="-pre-compile-test-single">
6.1252 + <!-- Empty placeholder for easier customization. -->
6.1253 + <!-- You can override this target in the ../build.xml file. -->
6.1254 + </target>
6.1255 + <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
6.1256 + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
6.1257 + <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
6.1258 + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
6.1259 + <copy todir="${build.test.classes.dir}">
6.1260 + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
6.1261 + </copy>
6.1262 + </target>
6.1263 + <target name="-post-compile-test-single">
6.1264 + <!-- Empty placeholder for easier customization. -->
6.1265 + <!-- You can override this target in the ../build.xml file. -->
6.1266 + </target>
6.1267 + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
6.1268 + <!--
6.1269 + =======================
6.1270 + TEST EXECUTION SECTION
6.1271 + =======================
6.1272 + -->
6.1273 + <target depends="init" if="have.tests" name="-pre-test-run">
6.1274 + <mkdir dir="${build.test.results.dir}"/>
6.1275 + </target>
6.1276 + <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
6.1277 + <j2seproject3:test testincludes="**/*Test.java"/>
6.1278 + </target>
6.1279 + <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
6.1280 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
6.1281 + </target>
6.1282 + <target depends="init" if="have.tests" name="test-report"/>
6.1283 + <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
6.1284 + <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
6.1285 + <target depends="init" if="have.tests" name="-pre-test-run-single">
6.1286 + <mkdir dir="${build.test.results.dir}"/>
6.1287 + </target>
6.1288 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
6.1289 + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
6.1290 + <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
6.1291 + </target>
6.1292 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
6.1293 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
6.1294 + </target>
6.1295 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
6.1296 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
6.1297 + <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
6.1298 + <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
6.1299 + <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
6.1300 + </target>
6.1301 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
6.1302 + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
6.1303 + </target>
6.1304 + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>
6.1305 + <!--
6.1306 + =======================
6.1307 + TEST DEBUGGING SECTION
6.1308 + =======================
6.1309 + -->
6.1310 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
6.1311 + <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
6.1312 + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
6.1313 + </target>
6.1314 + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
6.1315 + <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
6.1316 + <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
6.1317 + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
6.1318 + </target>
6.1319 + <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
6.1320 + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
6.1321 + </target>
6.1322 + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
6.1323 + <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
6.1324 + <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
6.1325 + <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
6.1326 + </target>
6.1327 + <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
6.1328 + <!--
6.1329 + =========================
6.1330 + APPLET EXECUTION SECTION
6.1331 + =========================
6.1332 + -->
6.1333 + <target depends="init,compile-single" name="run-applet">
6.1334 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
6.1335 + <j2seproject1:java classname="sun.applet.AppletViewer">
6.1336 + <customize>
6.1337 + <arg value="${applet.url}"/>
6.1338 + </customize>
6.1339 + </j2seproject1:java>
6.1340 + </target>
6.1341 + <!--
6.1342 + =========================
6.1343 + APPLET DEBUGGING SECTION
6.1344 + =========================
6.1345 + -->
6.1346 + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
6.1347 + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
6.1348 + <j2seproject3:debug classname="sun.applet.AppletViewer">
6.1349 + <customize>
6.1350 + <arg value="${applet.url}"/>
6.1351 + </customize>
6.1352 + </j2seproject3:debug>
6.1353 + </target>
6.1354 + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
6.1355 + <!--
6.1356 + ===============
6.1357 + CLEANUP SECTION
6.1358 + ===============
6.1359 + -->
6.1360 + <target name="-deps-clean-init" unless="built-clean.properties">
6.1361 + <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
6.1362 + <delete file="${built-clean.properties}" quiet="true"/>
6.1363 + </target>
6.1364 + <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
6.1365 + <echo level="warn" message="Cycle detected: example was already built"/>
6.1366 + </target>
6.1367 + <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
6.1368 + <mkdir dir="${build.dir}"/>
6.1369 + <touch file="${built-clean.properties}" verbose="false"/>
6.1370 + <property file="${built-clean.properties}" prefix="already.built.clean."/>
6.1371 + <antcall target="-warn-already-built-clean"/>
6.1372 + <propertyfile file="${built-clean.properties}">
6.1373 + <entry key="${basedir}" value=""/>
6.1374 + </propertyfile>
6.1375 + </target>
6.1376 + <target depends="init" name="-do-clean">
6.1377 + <delete dir="${build.dir}"/>
6.1378 + <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
6.1379 + </target>
6.1380 + <target name="-post-clean">
6.1381 + <!-- Empty placeholder for easier customization. -->
6.1382 + <!-- You can override this target in the ../build.xml file. -->
6.1383 + </target>
6.1384 + <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
6.1385 + <target name="-check-call-dep">
6.1386 + <property file="${call.built.properties}" prefix="already.built."/>
6.1387 + <condition property="should.call.dep">
6.1388 + <and>
6.1389 + <not>
6.1390 + <isset property="already.built.${call.subproject}"/>
6.1391 + </not>
6.1392 + <available file="${call.script}"/>
6.1393 + </and>
6.1394 + </condition>
6.1395 + </target>
6.1396 + <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
6.1397 + <ant antfile="${call.script}" inheritall="false" target="${call.target}">
6.1398 + <propertyset>
6.1399 + <propertyref prefix="transfer."/>
6.1400 + <mapper from="transfer.*" to="*" type="glob"/>
6.1401 + </propertyset>
6.1402 + </ant>
6.1403 + </target>
6.1404 +</project>
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/remoting/server/tests/integration-data/example/nbproject/genfiles.properties Wed Apr 17 19:44:36 2013 +0200
7.3 @@ -0,0 +1,8 @@
7.4 +build.xml.data.CRC32=e1bb0e2b
7.5 +build.xml.script.CRC32=825a45da
7.6 +build.xml.stylesheet.CRC32=8064a381@1.61.0.46
7.7 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
7.8 +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
7.9 +nbproject/build-impl.xml.data.CRC32=e1bb0e2b
7.10 +nbproject/build-impl.xml.script.CRC32=9957d528
7.11 +nbproject/build-impl.xml.stylesheet.CRC32=c4a38350@1.61.0.46
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/remoting/server/tests/integration-data/example/nbproject/project.properties Wed Apr 17 19:44:36 2013 +0200
8.3 @@ -0,0 +1,71 @@
8.4 +annotation.processing.enabled=true
8.5 +annotation.processing.enabled.in.editor=false
8.6 +annotation.processing.processor.options=
8.7 +annotation.processing.processors.list=
8.8 +annotation.processing.run.all.processors=true
8.9 +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
8.10 +build.classes.dir=${build.dir}/classes
8.11 +build.classes.excludes=**/*.java,**/*.form
8.12 +# This directory is removed when the project is cleaned:
8.13 +build.dir=build
8.14 +build.generated.dir=${build.dir}/generated
8.15 +build.generated.sources.dir=${build.dir}/generated-sources
8.16 +# Only compile against the classpath explicitly listed here:
8.17 +build.sysclasspath=ignore
8.18 +build.test.classes.dir=${build.dir}/test/classes
8.19 +build.test.results.dir=${build.dir}/test/results
8.20 +# Uncomment to specify the preferred debugger connection transport:
8.21 +#debug.transport=dt_socket
8.22 +debug.classpath=\
8.23 + ${run.classpath}
8.24 +debug.test.classpath=\
8.25 + ${run.test.classpath}
8.26 +# This directory is removed when the project is cleaned:
8.27 +dist.dir=dist
8.28 +dist.jar=${dist.dir}/example.jar
8.29 +dist.javadoc.dir=${dist.dir}/javadoc
8.30 +excludes=
8.31 +includes=**
8.32 +jar.compress=false
8.33 +javac.classpath=
8.34 +# Space-separated list of extra javac options
8.35 +javac.compilerargs=
8.36 +javac.deprecation=false
8.37 +javac.processorpath=\
8.38 + ${javac.classpath}
8.39 +javac.source=1.6
8.40 +javac.target=1.6
8.41 +javac.test.classpath=\
8.42 + ${javac.classpath}:\
8.43 + ${build.classes.dir}
8.44 +javac.test.processorpath=\
8.45 + ${javac.test.classpath}
8.46 +javadoc.additionalparam=
8.47 +javadoc.author=false
8.48 +javadoc.encoding=${source.encoding}
8.49 +javadoc.noindex=false
8.50 +javadoc.nonavbar=false
8.51 +javadoc.notree=false
8.52 +javadoc.private=false
8.53 +javadoc.splitindex=true
8.54 +javadoc.use=true
8.55 +javadoc.version=false
8.56 +javadoc.windowtitle=
8.57 +main.class=
8.58 +manifest.file=manifest.mf
8.59 +meta.inf.dir=${src.dir}/META-INF
8.60 +mkdist.disabled=false
8.61 +platform.active=default_platform
8.62 +run.classpath=\
8.63 + ${javac.classpath}:\
8.64 + ${build.classes.dir}
8.65 +# Space-separated list of JVM arguments used when running the project.
8.66 +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
8.67 +# To set system properties for unit tests define test-sys-prop.name=value:
8.68 +run.jvmargs=
8.69 +run.test.classpath=\
8.70 + ${javac.test.classpath}:\
8.71 + ${build.test.classes.dir}
8.72 +source.encoding=UTF-8
8.73 +src.dir=src
8.74 +test.src.dir=test
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/remoting/server/tests/integration-data/example/nbproject/project.xml Wed Apr 17 19:44:36 2013 +0200
9.3 @@ -0,0 +1,15 @@
9.4 +<?xml version="1.0" encoding="UTF-8"?>
9.5 +<project xmlns="http://www.netbeans.org/ns/project/1">
9.6 + <type>org.netbeans.modules.java.j2seproject</type>
9.7 + <configuration>
9.8 + <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
9.9 + <name>example</name>
9.10 + <source-roots>
9.11 + <root id="src.dir"/>
9.12 + </source-roots>
9.13 + <test-roots>
9.14 + <root id="test.src.dir"/>
9.15 + </test-roots>
9.16 + </data>
9.17 + </configuration>
9.18 +</project>
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/remoting/server/tests/integration-data/example/src/org/netbeans/modules/jackpot30/example/ClassA.java Wed Apr 17 19:44:36 2013 +0200
10.3 @@ -0,0 +1,7 @@
10.4 +package org.netbeans.modules.jackpot30.example;
10.5 +
10.6 +public class ClassA {
10.7 +
10.8 + public void method() {}
10.9 +
10.10 +}
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/remoting/server/tests/integration-data/example/src/org/netbeans/modules/jackpot30/example/SubClassA.java Wed Apr 17 19:44:36 2013 +0200
11.3 @@ -0,0 +1,9 @@
11.4 +package org.netbeans.modules.jackpot30.example;
11.5 +
11.6 +public class SubClassA extends ClassA {
11.7 +
11.8 + @Override
11.9 + public void method() {
11.10 + }
11.11 +
11.12 +}
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/remoting/server/tests/integration-data/example/src/org/netbeans/modules/jackpot30/example/UseClassA.java Wed Apr 17 19:44:36 2013 +0200
12.3 @@ -0,0 +1,9 @@
12.4 +package org.netbeans.modules.jackpot30.example;
12.5 +
12.6 +public class UseClassA {
12.7 +
12.8 + public void user() {
12.9 + ClassA a = new ClassA();
12.10 + a.method();
12.11 + }
12.12 +}
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
13.2 +++ b/remoting/server/tests/integration/pom.xml Wed Apr 17 19:44:36 2013 +0200
13.3 @@ -0,0 +1,49 @@
13.4 +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
13.5 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
13.6 + <modelVersion>4.0.0</modelVersion>
13.7 +
13.8 + <groupId>org.netbeans.modules.jackpot30</groupId>
13.9 + <artifactId>web.ui.integration.test</artifactId>
13.10 + <version>1.0-SNAPSHOT</version>
13.11 + <packaging>jar</packaging>
13.12 +
13.13 + <name>web.ui.integration.test</name>
13.14 + <url>http://maven.apache.org</url>
13.15 +
13.16 + <properties>
13.17 + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
13.18 + </properties>
13.19 +
13.20 + <dependencies>
13.21 + <dependency>
13.22 + <groupId>org.seleniumhq.selenium</groupId>
13.23 + <artifactId>selenium-java</artifactId>
13.24 + <version>2.31.0</version>
13.25 + </dependency>
13.26 + <dependency>
13.27 + <groupId>com.opera</groupId>
13.28 + <artifactId>operadriver</artifactId>
13.29 + </dependency>
13.30 + <dependency>
13.31 + <groupId>junit</groupId>
13.32 + <artifactId>junit</artifactId>
13.33 + <version>4.10</version>
13.34 + <scope>test</scope>
13.35 + </dependency>
13.36 + </dependencies>
13.37 + <dependencyManagement>
13.38 + <dependencies>
13.39 + <dependency>
13.40 + <groupId>com.opera</groupId>
13.41 + <artifactId>operadriver</artifactId>
13.42 + <version>1.2</version>
13.43 + <exclusions>
13.44 + <exclusion>
13.45 + <groupId>org.seleniumhq.selenium</groupId>
13.46 + <artifactId>selenium-remote-driver</artifactId>
13.47 + </exclusion>
13.48 + </exclusions>
13.49 + </dependency>
13.50 + </dependencies>
13.51 + </dependencyManagement>
13.52 +</project>
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2 +++ b/remoting/server/tests/integration/src/test/java/org/netbeans/modules/jackpot30/web/ui/test/OverallTest.java Wed Apr 17 19:44:36 2013 +0200
14.3 @@ -0,0 +1,187 @@
14.4 +/*
14.5 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
14.6 + *
14.7 + * Copyright 2013 Oracle and/or its affiliates. All rights reserved.
14.8 + *
14.9 + * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
14.10 + * Other names may be trademarks of their respective owners.
14.11 + *
14.12 + * The contents of this file are subject to the terms of either the GNU
14.13 + * General Public License Version 2 only ("GPL") or the Common
14.14 + * Development and Distribution License("CDDL") (collectively, the
14.15 + * "License"). You may not use this file except in compliance with the
14.16 + * License. You can obtain a copy of the License at
14.17 + * http://www.netbeans.org/cddl-gplv2.html
14.18 + * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
14.19 + * specific language governing permissions and limitations under the
14.20 + * License. When distributing the software, include this License Header
14.21 + * Notice in each file and include the License file at
14.22 + * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this
14.23 + * particular file as subject to the "Classpath" exception as provided
14.24 + * by Oracle in the GPL Version 2 section of the License file that
14.25 + * accompanied this code. If applicable, add the following below the
14.26 + * License Header, with the fields enclosed by brackets [] replaced by
14.27 + * your own identifying information:
14.28 + * "Portions Copyrighted [year] [name of copyright owner]"
14.29 + *
14.30 + * If you wish your version of this file to be governed by only the CDDL
14.31 + * or only the GPL Version 2, indicate your decision by adding
14.32 + * "[Contributor] elects to include this software in this distribution
14.33 + * under the [CDDL or GPL Version 2] license." If you do not indicate a
14.34 + * single choice of license, a recipient has the option to distribute
14.35 + * your version of this file under either the CDDL, the GPL Version 2 or
14.36 + * to extend the choice of license to its licensees as provided above.
14.37 + * However, if you add GPL Version 2 code and therefore, elected the GPL
14.38 + * Version 2 license, then the option applies only if the new code is
14.39 + * made subject to such option by the copyright holder.
14.40 + *
14.41 + * Contributor(s):
14.42 + *
14.43 + * Portions Copyrighted 2013 Sun Microsystems, Inc.
14.44 + */
14.45 +package org.netbeans.modules.jackpot30.web.ui.test;
14.46 +
14.47 +import com.gargoylesoftware.htmlunit.BrowserVersion;
14.48 +import com.google.common.base.Function;
14.49 +import com.google.common.base.Predicate;
14.50 +import java.util.ArrayList;
14.51 +import java.util.Arrays;
14.52 +import java.util.List;
14.53 +import org.junit.Assert;
14.54 +import org.junit.Test;
14.55 +import org.openqa.selenium.By;
14.56 +import org.openqa.selenium.WebDriver;
14.57 +import org.openqa.selenium.WebElement;
14.58 +import org.openqa.selenium.firefox.FirefoxDriver;
14.59 +import org.openqa.selenium.htmlunit.HtmlUnitDriver;
14.60 +import org.openqa.selenium.support.ui.WebDriverWait;
14.61 +
14.62 +/**
14.63 + *
14.64 + * @author lahvac
14.65 + */
14.66 +public class OverallTest {
14.67 +
14.68 + @Test
14.69 + public void overallTest() throws Exception {
14.70 +// WebDriver driver = new FirefoxDriver();
14.71 + WebDriver driver = new HtmlUnitDriver(BrowserVersion.FIREFOX_10);
14.72 +
14.73 + ((HtmlUnitDriver) driver).setJavascriptEnabled(true);
14.74 +
14.75 + try {
14.76 + driver.get("http://localhost:9998/index/ui/index.html");
14.77 +
14.78 + //wait for the page to be rendered:
14.79 + new WebDriverWait(driver, 20).until(new Predicate<WebDriver>() {
14.80 + public boolean apply(WebDriver t) {
14.81 + List<WebElement> cb = t.findElements(By.id("projectCheckBox-data"));
14.82 + return !cb.isEmpty() && cb.get(0).isDisplayed();
14.83 + }
14.84 + });
14.85 +
14.86 + WebElement searchInput = driver.findElements(By.id("search-input")).get(0);
14.87 +
14.88 + searchInput.sendKeys("ClassA");
14.89 + searchInput.submit();
14.90 +
14.91 + WebElement link = new WebDriverWait(driver, 20).until(new Function<WebDriver, WebElement>() {
14.92 + public WebElement apply(WebDriver t) {
14.93 + List<WebElement> cb = t.findElements(By.tagName("a"));
14.94 +
14.95 + for (WebElement we : cb) {
14.96 + String href = we.getAttribute("href");
14.97 +
14.98 + if (href != null && href.contains("goto=CLASS:org.netbeans.modules.jackpot30.example.ClassA")) return we;
14.99 + }
14.100 +
14.101 + return null;
14.102 + }
14.103 + });
14.104 +
14.105 +
14.106 + link.click();
14.107 +
14.108 + WebElement methodIdentifierSpan = new WebDriverWait(driver, 20).until(new Function<WebDriver, WebElement>() {
14.109 + public WebElement apply(WebDriver t) {
14.110 + List<WebElement> cb = t.findElements(By.tagName("span"));
14.111 +
14.112 + for (WebElement we : cb) {
14.113 + String href = we.getAttribute("jpt30pos");
14.114 +
14.115 + if (href != null && href.equals("88")) return we;
14.116 + }
14.117 +
14.118 + return null;
14.119 + }
14.120 + });
14.121 +
14.122 + String classes = methodIdentifierSpan.getAttribute("class");
14.123 +
14.124 + Assert.assertTrue(classes.contains("identifier") && classes.contains("method") && classes.contains("declaration") && classes.contains("public"));
14.125 +
14.126 + methodIdentifierSpan.click();
14.127 +
14.128 + Assert.assertEquals(Arrays.asList("example/src/org/netbeans/modules/jackpot30/example/SubClassA.java",
14.129 + "example/src/org/netbeans/modules/jackpot30/example/UseClassA.java"),
14.130 + usagesList(driver));
14.131 +
14.132 + findCheckbox(driver, "showUsages").click(); //uncheck
14.133 +
14.134 + Assert.assertEquals(Arrays.asList("example/src/org/netbeans/modules/jackpot30/example/SubClassA.java"),
14.135 + usagesList(driver));
14.136 +
14.137 + findCheckbox(driver, "showUsages").click(); //check
14.138 +
14.139 + Assert.assertEquals(Arrays.asList("example/src/org/netbeans/modules/jackpot30/example/SubClassA.java",
14.140 + "example/src/org/netbeans/modules/jackpot30/example/UseClassA.java"),
14.141 + usagesList(driver));
14.142 +
14.143 + findCheckbox(driver, "showSubtypes").click(); //uncheck
14.144 +
14.145 + Assert.assertEquals(Arrays.asList("example/src/org/netbeans/modules/jackpot30/example/UseClassA.java"),
14.146 + usagesList(driver));
14.147 +
14.148 + findCheckbox(driver, "showSubtypes").click(); //uncheck
14.149 +
14.150 + Assert.assertEquals(Arrays.asList("example/src/org/netbeans/modules/jackpot30/example/SubClassA.java",
14.151 + "example/src/org/netbeans/modules/jackpot30/example/UseClassA.java"),
14.152 + usagesList(driver));
14.153 + } finally {
14.154 + driver.quit();
14.155 + }
14.156 + }
14.157 +
14.158 + private List<String> usagesList(WebDriver driver) {
14.159 + Iterable<WebElement> usages = new WebDriverWait(driver, 20).until(new Function<WebDriver, Iterable<WebElement>>() {
14.160 + public Iterable<WebElement> apply(WebDriver t) {
14.161 + List<WebElement> cb = t.findElements(By.className("usages"));
14.162 +
14.163 + if (cb.isEmpty()) return null;
14.164 +
14.165 + return cb;
14.166 + }
14.167 + });
14.168 +
14.169 + List<String> usageStrings = new ArrayList<String>();
14.170 +
14.171 + for (WebElement we : usages) {
14.172 + if (!we.isDisplayed()) continue;
14.173 + usageStrings.add(we.getText());
14.174 + }
14.175 +
14.176 + return usageStrings;
14.177 + }
14.178 +
14.179 + private WebElement findCheckbox(WebDriver driver, final String id) {
14.180 + return new WebDriverWait(driver, 20).until(new Function<WebDriver, WebElement>() {
14.181 + public WebElement apply(WebDriver t) {
14.182 + List<WebElement> cb = t.findElements(By.id(id));
14.183 +
14.184 + if (cb.isEmpty()) return null;
14.185 +
14.186 + return cb.get(0);
14.187 + }
14.188 + });
14.189 + }
14.190 +}
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
15.2 +++ b/remoting/server/tests/run-integration-tests Wed Apr 17 19:44:36 2013 +0200
15.3 @@ -0,0 +1,25 @@
15.4 +#!/bin/bash -x
15.5 +do_index() {
15.6 + rm -rf cache
15.7 + mkdir -p cache
15.8 + ../../build/indexing-backend/index.sh data Data ../tests/cache/temp.zip integration-data integration-data/example
15.9 + (cd cache; unzip temp.zip; rm temp.zip)
15.10 +}
15.11 +
15.12 +do_index
15.13 +
15.14 +OUT=`mktemp`;
15.15 +trap "rm $OUT" EXIT
15.16 +#JACKPOT_WEB_OPTS=-Xmx128m ../../build/indexing-backend/web.sh --port 0 cache >"$OUT" &
15.17 +JACKPOT_WEB_OPTS=-Xmx128m ../../build/indexing-backend/web.sh cache >"$OUT" &
15.18 +
15.19 +trap "kill %1" EXIT
15.20 +
15.21 +#while [ -z "$PORT" ] ; do
15.22 +# sleep 1s;
15.23 +# PORT=`cat "$OUT" | grep "Running on port: " | cut -d ':' -f 2 | tr -d ' '`;
15.24 +#done
15.25 +
15.26 +(cd integration; mvn test)
15.27 +
15.28 +exit 0
16.1 --- a/remoting/server/web/web.ui.frontend/public_html/index/ui/search.html Wed Apr 17 19:38:41 2013 +0200
16.2 +++ b/remoting/server/web/web.ui.frontend/public_html/index/ui/search.html Wed Apr 17 19:44:36 2013 +0200
16.3 @@ -1,14 +1,14 @@
16.4 <form ng-submit="performQuery()">
16.5 - <input class="search-query" ng-model="prefix" type="text" name="prefix" placeholder="Search"/><!--ng-change="performQueryDelayed()" -->
16.6 + <input class="search-query" ng-model="prefix" type="text" name="prefix" placeholder="Search" id="search-input"/><!--ng-change="performQueryDelayed()" -->
16.7 <button class="btn" type="submit">Search</button>
16.8 </form>
16.9 <label>Projects:</label>
16.10 <input ng-model="$parent.allProjectsCheckBox" ng-change="$parent.allProjectsCheckBoxChanged()" type="checkbox" checked="yes">All</input>
16.11 <span class="project-checkboxes" ng-repeat="project in $parent.projects">
16.12 - <input class="projectCheckBox" type='checkbox' ng-model="project.selected" name="path" ng-change="$parent.projectCheckBoxChanged()">{{project.displayName}}</input>
16.13 + <input class="projectCheckBox" type='checkbox' ng-model="project.selected" name="path" ng-change="$parent.projectCheckBoxChanged()" id="projectCheckBox-{{project.id}}">{{project.displayName}}</input>
16.14 </span>
16.15 <table width="100%">
16.16 - <tr ng-repeat="symbolsDescription in searchResult" ng-show="projects.get(symbolsDescription.project.id).selected==true"> <!--projects[symbolsDescription.projectId].neco==true">-->
16.17 + <tr ng-repeat="symbolsDescription in searchResult" ng-show="projects.get(symbolsDescription.project.id).selected==true" id="{{symbolsDescription.project.id}}"> <!--projects[symbolsDescription.projectId].neco==true">-->
16.18 <td style="vertical-align: top">
16.19 <img src="/index/icons/{{getElementIcon(symbolsDescription.kind, symbolsDescription.modifiers)}}" alt="{{symbolsDescription.kind}}"/>
16.20 </td><td>
17.1 --- a/remoting/server/web/web.ui.frontend/public_html/index/ui/usages.html Wed Apr 17 19:38:41 2013 +0200
17.2 +++ b/remoting/server/web/web.ui.frontend/public_html/index/ui/usages.html Wed Apr 17 19:44:36 2013 +0200
17.3 @@ -6,15 +6,15 @@
17.4 <input class="projectCheckBox" type='checkbox' ng-model="project.selected" name="path" ng-change="$parent.projectCheckBoxChanged()">{{project.displayName}}</input>
17.5 </span>
17.6 <br><br>
17.7 -<input type='checkbox' ng-model="showUsages">Usages</input>
17.8 -<input type='checkbox' ng-model="showSubtypes">Subtypes/Overriders</input>
17.9 +<input type='checkbox' ng-model="showUsages" id="showUsages">Usages</input>
17.10 +<input type='checkbox' ng-model="showSubtypes" id="showSubtypes">Subtypes/Overriders</input>
17.11 <br><br>
17.12 <table width="100%">
17.13 <tr ng-repeat="usage in usages" ng-show="projects.get(usage.project.id).selected==true && ((showUsages && !!usage.usage) || (showSubtypes && (usage.subtypes || usage.overridersParents)))">
17.14 <td style="vertical-align: top">
17.15 <img src="/index/icons/{{getElementIcon(symbolsDescription.kind, symbolsDescription.modifiers)}}" alt="{{symbolsDescription.kind}}"/>
17.16 </td><td>
17.17 - <a href="#/showCode?path={{usage.project.id}}&relative={{usage.file}}&highlights={{escape('/index/ui/localUsages?path=' + usage.project.id + '&relative=' + usage.file + '&signature=' + signature)}}">{{usage.file}}</a>
17.18 + <a class="usages" href="#/showCode?path={{usage.project.id}}&relative={{usage.file}}&highlights={{escape('/index/ui/localUsages?path=' + usage.project.id + '&relative=' + usage.file + '&signature=' + signature)}}">{{usage.file}}</a>
17.19 </td>
17.20 <td align="right">{{usage.project.displayName.replace("&", "&").replace("<", "<").replace(" ", " ")}}</td>
17.21 </tr>