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("dart:builtin"); | 8 #import("dart:builtin"); |
9 #import("drt_updater.dart"); | 9 #import("drt_updater.dart"); |
10 | 10 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 ['-m', '--mode'], | 61 ['-m', '--mode'], |
62 ['all', 'debug', 'release'], | 62 ['all', 'debug', 'release'], |
63 'debug'), | 63 'debug'), |
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 frog: Compile dart code to JavaScript by running the frog compiler. | |
72 (only valid with the following runtimes: d8, drt, chrome, safari, ie, | |
73 firefox, opera, none (compile only)) | |
74 | |
75 dart2js: Compile dart code to JavaScript by running dart2js (leg). | 71 dart2js: Compile dart code to JavaScript by running dart2js (leg). |
76 (only valid with the following runtimes: same as frog) | 72 (only valid with the following runtimes: same as frog) |
77 | 73 |
78 dartc: Perform static analysis on Dart code by running dartc. | 74 dartc: Perform static analysis on Dart code by running dartc. |
79 (only valid with the following runtimes: none) | 75 (only valid with the following runtimes: none) |
80 | 76 |
81 frogsh: Compile dart code to JavaScript by running the frog compiler on | 77 frog: (DEPRECATED) Compile dart code to JavaScript by running the |
82 node.js, and run the resulting JavaScript on the same instance of | 78 frog compiler. (only valid with the following runtimes: d8, |
83 node.js. | 79 drt, chrome, safari, ie, firefox, opera, none (compile only))''', |
84 (only valid with the following runtimes: same as frog)''', | |
85 ['-c', '--compiler'], | 80 ['-c', '--compiler'], |
86 ['none', 'frog', 'dart2js', 'dartc', 'frogsh'], | 81 ['none', 'frog', 'dart2js', 'dartc'], |
87 'none'), | 82 'none'), |
88 new _TestOptionSpecification( | 83 new _TestOptionSpecification( |
89 'runtime', | 84 'runtime', |
90 '''Where the tests should be run. | 85 '''Where the tests should be run. |
91 vm: Run Dart code on the standalone dart vm. | 86 vm: Run Dart code on the standalone dart vm. |
92 | 87 |
93 d8: Run JavaScript from the command line using v8. | 88 d8: Run JavaScript from the command line using v8. |
94 | 89 |
95 drt: Run Dart or JavaScript in the headless version of Chrome, | 90 drt: Run Dart or JavaScript in the headless version of Chrome, |
96 DumpRenderTree. | 91 DumpRenderTree. |
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 | 372 |
378 /** | 373 /** |
379 * Determine if a particular configuration has a valid combination of compiler | 374 * Determine if a particular configuration has a valid combination of compiler |
380 * and runtime elements. | 375 * and runtime elements. |
381 */ | 376 */ |
382 bool _isValidConfig(Map config) { | 377 bool _isValidConfig(Map config) { |
383 bool isValid = true; | 378 bool isValid = true; |
384 switch (config['compiler']) { | 379 switch (config['compiler']) { |
385 case 'frog': | 380 case 'frog': |
386 case 'dart2js': | 381 case 'dart2js': |
387 case 'frogsh': | |
388 // Note: by adding 'none' as a configuration, if the user | 382 // Note: by adding 'none' as a configuration, if the user |
389 // runs test.py -c dart2js -r drt,none the dart2js_none and | 383 // runs test.py -c dart2js -r drt,none the dart2js_none and |
390 // dart2js_drt will be duplicating work. If later we don't need 'none' | 384 // dart2js_drt will be duplicating work. If later we don't need 'none' |
391 // with dart2js, we should remove it from here. | 385 // with dart2js, we should remove it from here. |
392 isValid = (const ['d8', 'drt', 'dartium', 'ff', | 386 isValid = (const ['d8', 'drt', 'dartium', 'ff', |
393 'chrome', 'safari', 'ie', 'opera', | 387 'chrome', 'safari', 'ie', 'opera', |
394 'none']).indexOf(config['runtime']) >= 0; | 388 'none']).indexOf(config['runtime']) >= 0; |
395 break; | 389 break; |
396 case 'dartc': | 390 case 'dartc': |
397 isValid = config['runtime'] == 'none'; | 391 isValid = config['runtime'] == 'none'; |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
627 return option; | 621 return option; |
628 } | 622 } |
629 } | 623 } |
630 print('Unknown test option $name'); | 624 print('Unknown test option $name'); |
631 exit(1); | 625 exit(1); |
632 } | 626 } |
633 | 627 |
634 | 628 |
635 List<_TestOptionSpecification> _options; | 629 List<_TestOptionSpecification> _options; |
636 } | 630 } |
OLD | NEW |