| OLD | NEW |
| 1 <!-- | 1 <!-- |
| 2 Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 2 Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
| 3 for details. All rights reserved. Use of this source code is governed by a | 3 for details. All rights reserved. Use of this source code is governed by a |
| 4 BSD-style license that can be found in the LICENSE file. | 4 BSD-style license that can be found in the LICENSE file. |
| 5 --> | 5 --> |
| 6 # How to test Fasta | 6 # How to test Fasta |
| 7 | 7 |
| 8 When changing Fasta, your changes can affect dart2js or the VM, so you may need | 8 When changing Fasta, your changes can affect dart2js or the VM, so you may need |
| 9 to test them. | 9 to test them. |
| 10 | 10 |
| 11 Most of the tests below use a 32-bit build because the test runs significantly f
aster. | 11 Most of the tests below use a 32-bit build because the test runs significantly f
aster. |
| 12 | 12 |
| 13 <!-- TODO(ahe): Soon, also the analyzer. --> | 13 <!-- TODO(ahe): Soon, also the analyzer. --> |
| 14 | 14 |
| 15 ## Test package:front_end and package:analyzer. | 15 ## Test package:front_end and package:analyzer. |
| 16 | 16 |
| 17 The absolutely bare minimum of testing is the basic unit tests: | 17 The absolutely bare minimum of testing is the basic unit tests: |
| 18 | 18 |
| 19 ``` | 19 ``` |
| 20 ./tools/test.py -mrelease 'pkg/front_end|*fasta*' --checked --time -pcolor --rep
ort --failure-summary -aia32 | 20 ./tools/test.py -mrelease 'pkg/front_end|*fasta*' --checked --time -pcolor --rep
ort -aia32 |
| 21 ``` | 21 ``` |
| 22 | 22 |
| 23 ## Testing dart2js | 23 ## Testing dart2js |
| 24 | 24 |
| 25 If you're making changes to dart2js, it most likely involves the scanner or pars
er (at least for now). In that case, you should run dart2js' unit tests (the tes
t suite called dart2js) as well as language and co19. | 25 If you're making changes to dart2js, it most likely involves the scanner or pars
er (at least for now). In that case, you should run dart2js' unit tests (the tes
t suite called dart2js) as well as language and co19. |
| 26 | 26 |
| 27 ``` | 27 ``` |
| 28 # Unit tests for dart2js | 28 # Unit tests for dart2js |
| 29 ./tools/test.py --dart2js-batch --time -pcolor --report --failure-summary -aia32
-mrelease --checked dart2js | 29 ./tools/test.py --dart2js-batch --time -pcolor --report -aia32 -mrelease --check
ed dart2js |
| 30 | 30 |
| 31 # Language and co19, dart2js. | 31 # Language and co19, dart2js. |
| 32 ./tools/test.py --dart2js-batch --time -pcolor --report --failure-summary -aia32
-mrelease -cdart2js -rd8 language co19 | 32 ./tools/test.py --dart2js-batch --time -pcolor --report -aia32 -mrelease -cdart2
js -rd8 language co19 |
| 33 ``` | 33 ``` |
| 34 | 34 |
| 35 ## Testing the Dart VM | 35 ## Testing the Dart VM |
| 36 | 36 |
| 37 If you're making changes that affect Kernel output, for example, BodyBuilder.dar
t, you probably also need to test on the VM: | 37 If you're making changes that affect Kernel output, for example, BodyBuilder.dar
t, you probably also need to test on the VM: |
| 38 | 38 |
| 39 Note that this test requires a 64-bit build because app-jit snapshot does not wo
rk for ia32. | 39 Note that this test requires a 64-bit build because app-jit snapshot does not wo
rk for ia32. |
| 40 | 40 |
| 41 ``` | 41 ``` |
| 42 # Language, co19, kernel, for VM using Fasta. | 42 # Language, co19, kernel, for VM using Fasta. |
| 43 ./tools/build.py -mrelease runtime_kernel && ./tools/test.py -mrelease -cdartk c
o19 language kernel --time -pcolor --report --failure-summary -j16 | 43 ./tools/build.py -mrelease runtime_kernel && ./tools/test.py -mrelease -cdartk c
o19 language kernel --time -pcolor --report -j16 |
| 44 ``` | 44 ``` |
| 45 | 45 |
| 46 | 46 |
| 47 Notice that the option is -cdartk, but it is actually Fasta. Not dartk. | 47 Notice that the option is -cdartk, but it is actually Fasta. Not dartk. |
| 48 | 48 |
| 49 If you're running on a Mac, it's important that you use the -j option with test.
py. It defaults to the number of cores on your machine (including hyper-threads)
, and for Linux that works fine. But Macs don't seem to be able to run as many p
rocesses in parallel. On a Mac Pro with 24 threads, using -j16 seems optimal. | 49 If you're running on a Mac, it's important that you use the -j option with test.
py. It defaults to the number of cores on your machine (including hyper-threads)
, and for Linux that works fine. But Macs don't seem to be able to run as many p
rocesses in parallel. On a Mac Pro with 24 threads, using -j16 seems optimal. |
| OLD | NEW |