OLD | NEW |
(Empty) | |
| 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 |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 |
| 5 /** |
| 6 * The command line and other arguments passed to the test runner are |
| 7 * gathered into a global [Configuration] instance that controls the |
| 8 * execution. For details on the various options here see |
| 9 * [getOptionParser]. |
| 10 */ |
| 11 class Configuration { |
| 12 final String unittestPath; |
| 13 final bool runInBrowser; |
| 14 final bool runIsolated; |
| 15 final bool verbose; |
| 16 final bool immediateOutput; |
| 17 final bool produceSummary; |
| 18 final bool includeTime; |
| 19 final bool listFiles; |
| 20 final bool listTests; |
| 21 final bool listGroups; |
| 22 final String listFormat; |
| 23 final String passFormat; |
| 24 final String failFormat; |
| 25 final String errorFormat; |
| 26 final List includeFilter; |
| 27 final List excludeFilter; |
| 28 final int timeout; |
| 29 final String runtime; |
| 30 final bool checkedMode; |
| 31 final bool keepTests; |
| 32 final bool stopOnFailure; |
| 33 final int maxTasks; |
| 34 final String outputStream; |
| 35 final String logStream; |
| 36 final String tempDir; |
| 37 String dart2jsPath; |
| 38 String drtPath; |
| 39 String dartPath; |
| 40 bool filtering; |
| 41 |
| 42 Configuration(ArgParser parser, ArgResults options) : |
| 43 unittestPath = makePathAbsolute(options['unittest']), |
| 44 runIsolated = options['isolate'], |
| 45 runInBrowser = (options['runtime'] != 'vm'), |
| 46 verbose = (options['log'] != 'none' && !options['list-groups']), |
| 47 immediateOutput = options['immediate'], |
| 48 produceSummary = options['summary'], |
| 49 includeTime = options['time'], |
| 50 listFiles = options['list-files'], |
| 51 listTests = options['list-tests'], |
| 52 listGroups = options['list-groups'], |
| 53 listFormat = options['list-format'], |
| 54 passFormat = options['pass-format'], |
| 55 failFormat = options['fail-format'], |
| 56 errorFormat = options['error-format'], |
| 57 includeFilter = options['include'], |
| 58 excludeFilter = options['exclude'], |
| 59 timeout = parseInt(options['timeout']), |
| 60 runtime = options['runtime'], |
| 61 checkedMode = options['checked'], |
| 62 keepTests = (options['keep-files'] && |
| 63 !(options['list-groups'] || options['list-tests'])), |
| 64 stopOnFailure = options['stop-on-failure'], |
| 65 maxTasks = parseInt(options['tasks']), |
| 66 outputStream = options['out'], |
| 67 logStream = options['log'], |
| 68 tempDir = options['tempdir'] { |
| 69 filtering = (includeFilter.length > 0 || excludeFilter.length > 0); |
| 70 var dartsdk = options['dartsdk']; |
| 71 var pathSep = Platform.pathSeparator; |
| 72 |
| 73 if (dartsdk == null || |
| 74 parser.getDefault('dart2js') != options['dart2js']) { |
| 75 dart2jsPath = options['dart2js']; |
| 76 } else { |
| 77 dart2jsPath = '$dartsdk${pathSep}dart-sdk${pathSep}bin${pathSep}dart2js'; |
| 78 } |
| 79 |
| 80 if (dartsdk == null || |
| 81 parser.getDefault('dart') != options['dart']) { |
| 82 dartPath = options['dart']; |
| 83 } else { |
| 84 dartPath = '$dartsdk${pathSep}dart-sdk${pathSep}bin${pathSep}dart'; |
| 85 } |
| 86 |
| 87 if (dartsdk == null || |
| 88 parser.getDefault('drt') != options['drt']) { |
| 89 drtPath = options['drt']; |
| 90 } else { |
| 91 drtPath = '$dartsdk${pathSep}chromium${pathSep}DumpRenderTree'; |
| 92 } |
| 93 } |
| 94 } |
OLD | NEW |