Mon, 15 Feb 2016 14:36:18 +0100
8149744: fix testng.jar delivery in Nashorn build.xml
Reviewed-by: hannesw, sundar
1 #
2 # Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
24 application.title=nashorn
26 # location of JDK embedded ASM sources
27 jdk.asm.src.dir=../jdk/src/share/classes/jdk/internal/org/objectweb/asm
29 # source and target levels
30 build.compiler=modern
31 javac.source=1.7
32 javac.target=1.7
33 test.javac.source=1.8
34 test.javac.target=1.8
36 # nashorn version information
37 nashorn.version=0.1
38 nashorn.fullversion=0.1
39 nashorn.product.name=Oracle Nashorn
41 # This directory is removed when the project is cleaned:
42 build.dir=build
43 build.classes.dir=${build.dir}/classes
44 build.zip=${build.dir}/nashorn.zip
45 build.gzip=${build.dir}/nashorn.tar.gz
47 # nashorn Shell tool
48 nashorn.shell.tool=jdk.nashorn.tools.Shell
50 # nasgen tool
51 nasgen.tool=jdk.nashorn.internal.tools.nasgen.Main
53 # parallel test runner tool
54 parallel.test.runner=jdk.nashorn.internal.test.framework.ParallelTestRunner
56 # test classes directory
57 build.test.classes.dir=${build.dir}/test/classes
59 # nashorn test jar - internal tests jar and api tests jar
60 nashorn.internal.tests.jar=${build.dir}/nashorn-internal-tests.jar
61 nashorn.api.tests.jar=${build.dir}/nashorn-api-tests.jar
63 # test results directory
64 build.test.results.dir=${build.dir}/test/reports
65 build.nosecurity.test.results.dir=${build.dir}/test/nosecurity/reports
66 build.nooptimistic.test.results.dir=${build.dir}/test/nooptimistic/reports
68 # This directory is removed when the project is cleaned:
69 dist.dir=dist
70 dist.jar=${dist.dir}/nashorn.jar
71 dist.javadoc.dir=${dist.dir}/javadoc
73 # nashorn javafx shell
74 fxshell.tool = jdk.nashorn.tools.FXShell
75 fxshell.classes.dir = ${build.dir}/fxshell/classes
76 fxshell.dir = tools/fxshell
77 fxshell.jar = ${dist.dir}/nashornfx.jar
79 # configuration for java flight recorder
80 run.test.jvmargs.jfr=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=${build.dir},stackdepth=128
82 # test library location
83 test.lib=${basedir}${file.separator}test${file.separator}lib
85 # jars refererred
86 file.reference.testng.jar=${test.lib}${file.separator}testng-6.8.jar
87 file.reference.jcommander.jar=${test.lib}${file.separator}jcommander-1.27.jar
88 file.reference.bsh.jar=${test.lib}${file.separator}bsh-2.0b4.jar
89 file.reference.snakeyaml.jar=${test.lib}${file.separator}snakeyaml-1.6.jar
91 # TestNG ant task classpath
92 testng.ant.classpath=\
93 ${file.reference.testng.jar}${path.separator}\
94 ${file.reference.jcommander.jar}${path.separator}\
95 ${file.reference.bsh.jar}${path.separator}\
96 ${file.reference.snakeyaml.jar}${path.separator}
98 # Set testng verbose level
99 # From TestNG docs: "the verbosity level (0 to 10 where 10 is most detailed)
100 # Actually, this is a lie: you can specify -1 and this will put TestNG in
101 # debug mode (no longer slicing off stack traces and all)."
103 testng.verbose=2
105 # TestNG listeners - we want to replace TestNG's own JUnit
106 # reporter, but want everything else provided by default
107 # Unfortunately, we've to clone the other default reporters here.
109 testng.listeners=\
110 org.testng.reporters.SuiteHTMLReporter, \
111 org.testng.reporters.TestHTMLReporter, \
112 org.testng.reporters.jq.Main, \
113 org.testng.reporters.FailedReporter, \
114 org.testng.reporters.XMLReporter \
115 org.testng.reporters.EmailableReporter, \
116 jdk.nashorn.internal.test.framework.JSJUnitReportReporter
118 javac.debug=true
119 javac.encoding=ascii
120 javac.classpath=\
121 ${build.classes.dir}
122 javac.test.classpath=\
123 ${build.classes.dir}${path.separator}\
124 ${build.test.classes.dir}${path.separator}\
125 ${file.reference.testng.jar}${path.separator}\
126 ${file.reference.jcommander.jar}${path.separator}\
127 ${file.reference.bsh.jar}${path.separator}\
128 ${file.reference.snakeyaml.jar}
130 meta.inf.dir=${src.dir}/META-INF
132 run.classpath=\
133 ${build.classes.dir}
135 # test scripts to run
136 test.dir=test
137 test.nosecurity.dir=test/script/nosecurity
138 test.script.dir=test/script
139 test.basic.dir=test/script/basic
140 test.maptests.dir=test/script/maptests
141 test.error.dir=test/script/error
142 test.sandbox.dir=test/script/sandbox
143 test.trusted.dir=test/script/trusted
144 test.external.dir=test/script/external
145 test262.dir=${test.external.dir}/test262
146 test262.suite.dir=${test262.dir}/test/suite
147 testjfx.dir=${test.script.dir}/jfx
148 testmarkdown.dir=${test.script.dir}/markdown
150 test-sys-prop.test.dir=${test.dir}
151 test-sys-prop.test.js.roots=${test.basic.dir} ${test.maptests.dir} ${test.error.dir} ${test.sandbox.dir} ${test.trusted.dir}
152 test-sys-prop.test262.suite.dir=${test262.suite.dir}
153 test-sys-prop.es5conform.testcases.dir=${test.external.dir}/ES5Conform/TestCases
154 test-sys-prop.test.basic.dir=${test.basic.dir}
156 test-sys-prop-no-security.test.dir=${test.dir}
157 test-sys-prop-no-security.test.js.roots=${test.nosecurity.dir}
159 # framework root for our script tests
160 test-sys-prop.test.js.framework=${test.script.dir}/assert.js
161 test-sys-prop-no-security.test.js.framework=${test.script.dir}/assert.js
163 # Control the verbosity of ParserTest
164 test-sys-prop.parsertest.verbose=false
166 # turn on/off scripting mode for parser tests
167 test-sys-prop.parsertest.scripting=true
169 # turn on/off test262 scripts for parser tests
170 test-sys-prop.parsertest.test262=false
172 # Control the verbosity of the CompilerTest
173 test-sys-prop.compilertest.verbose=false
175 # turn on/off scripting mode for compiler tests
176 test-sys-prop.compilertest.scripting=true
178 # turn on/off test262 scripts for compiler tests
179 test-sys-prop.compilertest.test262=false
181 # test directory to be excluded.
182 test-sys-prop.test.js.exclude.dir=${test.script.dir}/currently-failing ${test.external.dir}
184 # run everything that's js in here, without checking file headers for test annotations
185 test-sys-prop.test.js.unchecked.dir=${test262.dir}
187 # test root for octane
188 octane-test-sys-prop.test.js.roots=${test.external.dir}/octane/
190 # run octane benchmars in separate processes? (recommended)
191 octane-test-sys-prop.separate.process=true
193 # framework root for octane
194 octane-test-sys-prop.test.js.framework=${test.basic.dir}/run-octane.js
196 # test root for sunspider
197 sunspider-test-sys-prop.test.js.roots=${test.external.dir}/sunspider/tests/sunspider-1.0.2/
199 # framework root for sunspider
200 sunspider-test-sys-prop.test.js.framework=${test.basic.dir}/runsunspider.js
202 # list of tests to be excluded
203 sunspider-test-sys-prop.test.js.exclude.list=
205 # execute our script tests in shared nashorn context or not?
206 test-sys-prop.test.js.shared.context=false
208 # execute test262 tests in shared nashorn context or not?
209 test262-test-sys-prop.test.js.shared.context=true
211 # test262 test root
212 test262-test-sys-prop.test.js.roots=${test262.suite.dir}
214 # test262 enable/disable strict mode tests
215 test262-test-sys-prop.test.js.enable.strict.mode=true
217 # file containing test262 tests to be excluded
218 # test262-test-sys-prop.test.js.excludes.file=${test262.dir}/test/config/excludelist.xml
220 # list of test262 test dirs to be excluded
221 test262-test-sys-prop.test.js.exclude.dir=\
222 ${test262.suite.dir}/intl402/ \
223 ${test262.suite.dir}/bestPractice/
225 test262-test-sys-prop.test.failed.list.file=${build.dir}/test/failedTests
227 # test262 test frameworks
228 test262-test-sys-prop.test.js.framework=\
229 --class-cache-size=10 \
230 --no-java \
231 --no-typed-arrays \
232 -timezone=PST \
233 ${test.script.dir}/test262.js \
234 ${test262.dir}/test/harness/framework.js \
235 ${test262.dir}/test/harness/sta.js
237 # testmarkdown test root
238 testmarkdown-test-sys-prop.test.js.roots=${testmarkdown.dir}
240 # execute testmarkdown tests in shared nashorn context or not?
241 testmarkdown-test-sys-prop.test.js.shared.context=false
243 # framework root for markdown script tests
244 testmarkdown-test-sys-prop.test.js.framework=\
245 ${test.script.dir}${file.separator}markdown.js
247 # testjfx test root
248 testjfx-test-sys-prop.test.js.roots=${testjfx.dir}
250 # execute testjfx tests in shared nashorn context or not?
251 testjfx-test-sys-prop.test.js.shared.context=false
253 # framework root for our script tests
254 testjfx-test-sys-prop.test.js.framework=\
255 -fx \
256 ${test.script.dir}${file.separator}jfx.js
258 file.reference.jemmyfx.jar=${test.lib}${file.separator}JemmyFX.jar
259 file.reference.jemmycore.jar=${test.lib}${file.separator}JemmyCore.jar
260 file.reference.jemmyawtinput.jar=${test.lib}${file.separator}JemmyAWTInput.jar
261 file.reference.jfxrt.jar=${java.home}${file.separator}lib${file.separator}ext${file.separator}jfxrt.jar
262 testjfx.run.test.classpath=\
263 ${file.reference.jemmyfx.jar}${path.separator}\
264 ${file.reference.jemmycore.jar}${path.separator}\
265 ${file.reference.jemmyawtinput.jar}${path.separator}\
266 ${file.reference.testng.jar}${path.separator}\
267 ${file.reference.jcommander.jar}${path.separator}\
268 ${file.reference.bsh.jar}${path.separator}\
269 ${file.reference.snakeyaml.jar}${path.separator}\
270 ${nashorn.internal.tests.jar}${path.separator}\
271 ${nashorn.api.tests.jar}
273 # testjfx VM options for script tests with @fork option
274 testjfx-test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${testjfx.run.test.classpath}
276 run.test.classpath=\
277 ${file.reference.testng.jar}${path.separator}\
278 ${file.reference.jcommander.jar}${path.separator}\
279 ${file.reference.bsh.jar}${path.separator}\
280 ${file.reference.snakeyaml.jar}${path.separator}\
281 ${nashorn.internal.tests.jar}${path.separator}\
282 ${nashorn.api.tests.jar}
284 src.dir=src
285 test.src.dir=test/src
287 # -Xmx is used for all tests, -Xms only for octane benchmark
288 run.test.xmx=2G
289 run.test.xms=2G
291 # uncomment this jfr.args to enable light recordings. the stack needs to be cranked up to 1024 frames,
292 # or everything will as of the now drown in lambda forms and be cut off.
293 #
294 #jfr.args=-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath="test_suite.jfr",stackdepth=1024 \
296 jfr.args=
298 run.test.user.language=tr
299 run.test.user.country=TR
301 run.test.jvmargs.common=\
302 -server \
303 -Dfile.encoding=UTF-8 \
304 -Duser.language=${run.test.user.language} \
305 -Duser.country=${run.test.user.country} \
306 -Dnashorn.typeInfo.cacheDir=${build.dir}${file.separator}test${file.separator}type_info_cache \
307 ${jfr.args} \
308 -XX:+HeapDumpOnOutOfMemoryError
310 # turn on assertions for tests
311 run.test.jvmargs.main=${run.test.jvmargs.common} -ea
313 # Extra jvmargs that might be useful for debugging
314 # and performance improvements/monitoring
315 #
316 # -XX:+UnlockDiagnosticVMOptions
317 #
318 # turn off compressed class pointers in metaspace
319 # -XX:-UseCompressedKlassPointers
320 #
321 # dump the heap after every GC
322 # -XX:+PrintHeapAtGC
323 #
324 # manually set a metaspace size for class data
325 # -XX:ClassMetaspaceSize=300M
326 #
327 # print out methods compiled
328 # -XX:+PrintCompilation
329 #
330 # print all compiled nmethods with oopmaps and lots of other info
331 # -XX:+PrintNMethods
332 #
333 # activate the generic "UseNewCode" flag to test whatever functionality
334 # lies behind it. This is the preferred way to test a, yet flagless,
335 # feature in HotSpot - for example, the uncommon trap placement fix
336 # was hidden behind this flag before it became the default
337 #
338 # -XX:+UnlockDiagnosticVMOptions -XX:+UseNewCode
339 #
340 # Crank up the type profile level to 222, which has some warmup
341 # penalties, but produces much better code for JavaScript, where better
342 # and more intrusive type profiling is required to get rid of
343 # a large amount of unnecessary guard code, that could not otherwise
344 # be eliminated
345 #
346 # -XX:TypeProfileLevel=222
347 #
349 # Use best known performance options for octane
350 run.test.jvmargs.octane.main=${run.test.jvmargs.common} -XX:TypeProfileLevel=222
352 # Security manager args - make sure that we run with the nashorn.policy that the build creates
353 run.test.jvmsecurityargs=-Xverify:all -Djava.security.manager -Djava.security.policy=${build.dir}/nashorn.policy
355 # VM options for script tests with @fork option
356 test-sys-prop.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} ${run.test.jvmsecurityargs} -cp ${run.test.classpath}
357 # VM options for no-security script tests with @fork option - same as above but without jvmsecurityargs
358 test-sys-prop-no-security.test.fork.jvm.options=${run.test.jvmargs.main} -Xmx${run.test.xmx} -cp ${run.test.classpath}
360 # path of rhino.jar for benchmarks
361 rhino.dir=
362 rhino.jar=${rhino.dir}/js.jar
364 v8.shell=d8
366 # How many iterations should 'ant octane' run for each
367 # benchmark
368 octane.iterations=25
370 # List of octane tests to run, as properties prefixed with
371 # "octane.benchmark." mapping to the benchmark name in
372 # the test harness
373 #
374 # Octane tests that are disabled should have their entire line
375 # commented out Tests may be disabled for functionality reasons when
376 # they have bugs or when the runtime doesn't handle them (yet)
377 octane.benchmark.box2d=box2d
378 #octane.benchmark.code-load=code-load
379 octane.benchmark.crypto=crypto
380 octane.benchmark.deltablue=deltablue
381 octane.benchmark.earley-boyer=earley-boyer
382 octane.benchmark.gbemu=gbemu
383 octane.benchmark.navier-stokes=navier-stokes
384 octane.benchmark.mandreel=mandreel
385 octane.benchmark.pdfjs=pdfjs
386 octane.benchmark.raytrace=raytrace
387 octane.benchmark.regexp=regexp
388 octane.benchmark.richards=richards
389 octane.benchmark.splay=splay
390 #octane.benchmark.typescript=typescript
391 #octane.benchmark.zlib=zlib
393 #path to rhino jar file
394 octaneperf-sys-prop.rhino.jar=${rhino.jar}
396 #timeout for performance tests in minutes
397 octaneperf-sys-prop.timeout.value=10
399 #how many iterations to run sunspider after warmup
400 sunspider.iterations=3000
402 #################
403 # code coverage #
404 #################
406 #enable/disable code coverage; please redifine in the ${user.home}/.nashorn.project.local.properties
407 make.code.coverage=false
409 #type of codecoverage; one of static or dynamic. Now only dynamic is supported
410 jcov=dynamic
412 #naming of CC results
413 #NB directory specified in the cc.dir will be cleaned up!!!
414 cc.dir=${basedir}/../Codecoverage_Nashorn
415 cc.result.file.name=CC_${jcov}_nashorn.xml
417 #dynamic CC parameters; please redefine in the ${user.home}/.nashorn.project.local.properties
418 jcov2.lib.dir=${basedir}/../jcov2/lib
419 jcov.jar=${jcov2.lib.dir}/jcov.jar
420 cc.include=jdk\.nashorn\.*
421 cc.exclude=jdk\.nashorn\.internal\.scripts\.*
422 cc.dynamic.genereate.template=true
423 cc.template=${cc.dir}/CC_template.xml
424 cc.dynamic.args=-javaagent:${jcov.jar}=include=${cc.include},exclude=${cc.exclude},type=all,verbose=0,file=${cc.dir}/${cc.result.file.name}