summaryrefslogtreecommitdiffstats
path: root/jack-tests/README
blob: 6b060fd1ee44c28406e4fd8d6fd340ac6a0306e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Copyright (C) 2014 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

To run the tests a configuration file must be provided.

Make a copy of tests.properties.template so that your settings are not committed.

It can be passed by setting the property "tests.config" (with -D) with the path to the file.

To be able to use jack-tests to run the tests, the configuration file
must define following properties:
 * jack.home: absolute path to Jack directory
 * candidate.toolchain: the toolchain to pass the tests on
 * reference.toolchain: the toolchain to compare the candidate toolchain against
   the available values for these toolchains are:
     - jack-api-vXX: Jack is used through version XX of its api (example: jack-api-v01)
     - jack-cli: Jack is used through its command line interface
     - jill-legacy: sources are first compiled with the legacy compiler, then the result is passed to Jill to create a .jack library to be imported into Jack to produce the binary output
     - legacy: full legacy toolchain. Usually this toolchain is used as reference.toolchain

 * runtime.list: comma-separated list of runtime environment names
 * runtime.location.<runtime environment name>: location of host android runtime environments. you
 must specify those which are listed in runtime.list.

The following values are supported:
 * runtime.location.dalvik-fast-host
 * runtime.location.dalvik-jit
 * runtime.location.art-host

Indicate the location of the legacy java compiler executable with:
 * toolchain.prebuilt.legacy-java-compiler

In Eclipse: define a run configuration with -Dtests.config as a VM argument.
On the command line:
 * use run-jack-tests script with the config file path as first parameter, and the test suite to
run as the second parameter
 * use Ant tasks to run common sets of tests.
   test-jack      : tests that must pass in order to submit a CL
   test-jack-long : tests too long to be passed in the previous case
   test-jack-all  : all tests
   test-sched     : schedlib tests
   Example:
     ant -Dtests.config=/path/to/config test-jack

These Ant tasks generate an HTML report in test-results/ by default. This value can be overridden by setting the jack.tests.output property:
     ant -Dtests.config=/path/to/config -Djack.tests.output=/path/to/report/dir test-jack