| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #library("test_options_parser"); | 5 #library("test_options_parser"); |
| 6 | 6 |
| 7 #import("dart:io"); | 7 #import("dart:io"); |
| 8 #import("drt_updater.dart"); | 8 #import("drt_updater.dart"); |
| 9 #import("test_suite.dart"); | 9 #import("test_suite.dart"); |
| 10 | 10 |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 64 new _TestOptionSpecification( | 64 new _TestOptionSpecification( |
| 65 'compiler', | 65 'compiler', |
| 66 '''Specify any compilation step (if needed). | 66 '''Specify any compilation step (if needed). |
| 67 | 67 |
| 68 none: Do not compile the Dart code (run native Dart code on the VM). | 68 none: Do not compile the Dart code (run native Dart code on the VM). |
| 69 (only valid with the following runtimes: vm, drt) | 69 (only valid with the following runtimes: vm, drt) |
| 70 | 70 |
| 71 dart2dart: Compile Dart code to Dart code | 71 dart2dart: Compile Dart code to Dart code |
| 72 (only valid with the following runtimes: vm, drt) | 72 (only valid with the following runtimes: vm, drt) |
| 73 | 73 |
| 74 dart2js: Compile dart code to JavaScript by running dart2js (leg). | 74 dart2js: Compile dart code to JavaScript by running dart2js. |
| 75 (only valid with the following runtimes: same as frog) | 75 (only valid with the following runtimes: d8, drt, chrome, |
| 76 safari, ie, firefox, opera, none (compile only)), |
| 76 | 77 |
| 77 dartc: Perform static analysis on Dart code by running dartc. | 78 dartc: Perform static analysis on Dart code by running dartc. |
| 78 (only valid with the following runtimes: none) | 79 (only valid with the following runtimes: none)''', |
| 79 | |
| 80 frog: (DEPRECATED) Compile dart code to JavaScript by running the | |
| 81 frog compiler. (only valid with the following runtimes: d8, | |
| 82 drt, chrome, safari, ie, firefox, opera, none (compile only))''', | |
| 83 ['-c', '--compiler'], | 80 ['-c', '--compiler'], |
| 84 ['none', 'dart2dart', 'frog', 'dart2js', 'dartc'], | 81 ['none', 'dart2dart', 'dart2js', 'dartc'], |
| 85 'none'), | 82 'none'), |
| 86 new _TestOptionSpecification( | 83 new _TestOptionSpecification( |
| 87 'runtime', | 84 'runtime', |
| 88 '''Where the tests should be run. | 85 '''Where the tests should be run. |
| 89 vm: Run Dart code on the standalone dart vm. | 86 vm: Run Dart code on the standalone dart vm. |
| 90 | 87 |
| 91 d8: Run JavaScript from the command line using v8. | 88 d8: Run JavaScript from the command line using v8. |
| 92 | 89 |
| 93 drt: Run Dart or JavaScript in the headless version of Chrome, | 90 drt: Run Dart or JavaScript in the headless version of Chrome, |
| 94 DumpRenderTree. | 91 DumpRenderTree. |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 207 [], | 204 [], |
| 208 ''), | 205 ''), |
| 209 new _TestOptionSpecification( | 206 new _TestOptionSpecification( |
| 210 'time', | 207 'time', |
| 211 'Print timing information after running tests', | 208 'Print timing information after running tests', |
| 212 ['--time'], | 209 ['--time'], |
| 213 [], | 210 [], |
| 214 false, | 211 false, |
| 215 'bool'), | 212 'bool'), |
| 216 new _TestOptionSpecification( | 213 new _TestOptionSpecification( |
| 217 'frog', | |
| 218 'Path to frog script or executable', | |
| 219 ['--frog'], | |
| 220 [], | |
| 221 ''), | |
| 222 new _TestOptionSpecification( | |
| 223 'dart', | 214 'dart', |
| 224 'Path to dart executable', | 215 'Path to dart executable', |
| 225 ['--dart'], | 216 ['--dart'], |
| 226 [], | 217 [], |
| 227 ''), | 218 ''), |
| 228 new _TestOptionSpecification( | 219 new _TestOptionSpecification( |
| 229 'drt', | 220 'drt', |
| 230 'Path to DumpRenderTree executable', | 221 'Path to DumpRenderTree executable', |
| 231 ['--drt'], | 222 ['--drt'], |
| 232 [], | 223 [], |
| 233 ''), | 224 ''), |
| 234 new _TestOptionSpecification( | 225 new _TestOptionSpecification( |
| 235 'dartium', | 226 'dartium', |
| 236 'Path to Dartium Chrome executable', | 227 'Path to Dartium Chrome executable', |
| 237 ['--dartium'], | 228 ['--dartium'], |
| 238 [], | 229 [], |
| 239 ''), | 230 ''), |
| 240 new _TestOptionSpecification( | 231 new _TestOptionSpecification( |
| 241 'froglib', | |
| 242 'Path to frog library', | |
| 243 ['--froglib'], | |
| 244 [], | |
| 245 ''), | |
| 246 new _TestOptionSpecification( | |
| 247 'use_sdk', | 232 'use_sdk', |
| 248 '''Use compiler or runtime from the SDK. | 233 '''Use compiler or runtime from the SDK. |
| 249 | 234 |
| 250 Normally, the compiler or runtimes in PRODUCT_DIR is tested, with this | 235 Normally, the compiler or runtimes in PRODUCT_DIR is tested, with this |
| 251 option, the compiler or runtime in PRODUCT_DIR/dart-sdk/bin is tested. | 236 option, the compiler or runtime in PRODUCT_DIR/dart-sdk/bin is tested. |
| 252 | 237 |
| 253 Note: currently only implemented for dart2js.''', | 238 Note: currently only implemented for dart2js.''', |
| 254 ['--use-sdk'], | 239 ['--use-sdk'], |
| 255 [], | 240 [], |
| 256 false, | 241 false, |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 385 } | 370 } |
| 386 | 371 |
| 387 /** | 372 /** |
| 388 * Determine if a particular configuration has a valid combination of compiler | 373 * Determine if a particular configuration has a valid combination of compiler |
| 389 * and runtime elements. | 374 * and runtime elements. |
| 390 */ | 375 */ |
| 391 bool _isValidConfig(Map config) { | 376 bool _isValidConfig(Map config) { |
| 392 bool isValid = true; | 377 bool isValid = true; |
| 393 List<String> validRuntimes; | 378 List<String> validRuntimes; |
| 394 switch (config['compiler']) { | 379 switch (config['compiler']) { |
| 395 case 'frog': | |
| 396 case 'dart2js': | 380 case 'dart2js': |
| 397 // Note: by adding 'none' as a configuration, if the user | 381 // Note: by adding 'none' as a configuration, if the user |
| 398 // runs test.py -c dart2js -r drt,none the dart2js_none and | 382 // runs test.py -c dart2js -r drt,none the dart2js_none and |
| 399 // dart2js_drt will be duplicating work. If later we don't need 'none' | 383 // dart2js_drt will be duplicating work. If later we don't need 'none' |
| 400 // with dart2js, we should remove it from here. | 384 // with dart2js, we should remove it from here. |
| 401 validRuntimes = const ['d8', 'drt', 'none', 'dartium', | 385 validRuntimes = const ['d8', 'drt', 'none', 'dartium', |
| 402 'ff', 'chrome', 'safari', 'ie', 'opera']; | 386 'ff', 'chrome', 'safari', 'ie', 'opera']; |
| 403 break; | 387 break; |
| 404 case 'dartc': | 388 case 'dartc': |
| 405 validRuntimes = const ['none']; | 389 validRuntimes = const ['none']; |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 642 return option; | 626 return option; |
| 643 } | 627 } |
| 644 } | 628 } |
| 645 print('Unknown test option $name'); | 629 print('Unknown test option $name'); |
| 646 exit(1); | 630 exit(1); |
| 647 } | 631 } |
| 648 | 632 |
| 649 | 633 |
| 650 List<_TestOptionSpecification> _options; | 634 List<_TestOptionSpecification> _options; |
| 651 } | 635 } |
| OLD | NEW |