Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Unified Diff: tools/testing/dart/options.dart

Issue 2903703002: Tighten types in test.dart even more. (Closed)
Patch Set: Play nicer with strong mode. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/testing/dart/http_server.dart ('k') | tools/testing/dart/package_testing_support.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/testing/dart/options.dart
diff --git a/tools/testing/dart/options.dart b/tools/testing/dart/options.dart
index 685e7c93df36ab32fe097f345557320231c4ad7a..565bbaf41c4fe01d149dc0cfb820a248d7ed9c38 100644
--- a/tools/testing/dart/options.dart
+++ b/tools/testing/dart/options.dart
@@ -397,7 +397,7 @@ compiler.''')
/// Configurations are maps mapping from option keys to values. When
/// encountering the first non-option string, the rest of the arguments are
/// stored in the returned Map under the 'rest' key.
- List<Map> parse(List<String> arguments) {
+ List<Map<String, dynamic>> parse(List<String> arguments) {
// TODO(rnystrom): The builders on the buildbots still pass this even
// though it does nothing. Until those can be fixed, silently ignore the
// option. Remove this once the buildbot scripts are fixed.
@@ -406,7 +406,7 @@ compiler.''')
print('Note: Ignoring unsupported "--failure-summary" option.');
}
- var configuration = {};
+ var configuration = <String, dynamic>{};
// Fill in configuration with arguments passed to the test script.
for (var i = 0; i < arguments.length; i++) {
@@ -565,7 +565,7 @@ compiler.''')
bool _isValidConfig(Map config) {
var isValid = true;
List<String> validRuntimes;
- switch (config['compiler']) {
+ switch (config['compiler'] as String) {
case 'dart2js':
// Note: by adding 'none' as a configuration, if the user
// runs test.py -c dart2js -r drt,none the dart2js_none and
@@ -618,13 +618,14 @@ compiler.''')
"Skipping this combination.");
}
- if (config['ie'] && Platform.operatingSystem != 'windows') {
+ if ((config['ie'] as bool) && Platform.operatingSystem != 'windows') {
isValid = false;
print("Warning: cannot run Internet Explorer on non-Windows operating"
" system.");
}
- if (config['shard'] < 1 || config['shard'] > config['shards']) {
+ if ((config['shard'] as int) < 1 ||
+ (config['shard'] as int) > (config['shards'] as int)) {
isValid = false;
print("Error: shard index is ${config['shard']} out of "
"${config['shards']} shards");
@@ -646,7 +647,8 @@ compiler.''')
/// Recursively expands a configuration with multiple values per key into a
/// list of configurations with exactly one value per key.
- List<Map> _expandConfigurations(Map configuration) {
+ List<Map<String, dynamic>> _expandConfigurations(
+ Map<String, dynamic> configuration) {
// Expand the pseudo-values such as 'all'.
if (configuration['arch'] == 'all') {
configuration['arch'] = 'ia32,x64,simarm,simarm64,simmips,simdbc64';
@@ -656,30 +658,31 @@ compiler.''')
configuration['mode'] = 'debug,release,product';
}
- if (configuration['report_in_json']) {
+ if (configuration['report_in_json'] as bool) {
configuration['list'] = true;
configuration['report'] = true;
}
// Use verbose progress indication for verbose output unless buildbot
// progress indication is requested.
- if (configuration['verbose'] && configuration['progress'] != 'buildbot') {
+ if ((configuration['verbose'] as bool) &&
+ (configuration['progress'] as String) != 'buildbot') {
configuration['progress'] = 'verbose';
}
// Create the artificial negative options that test status files
// expect.
- configuration['unchecked'] = !configuration['checked'];
- configuration['host_unchecked'] = !configuration['host_checked'];
- configuration['unminified'] = !configuration['minified'];
- configuration['nocsp'] = !configuration['csp'];
+ configuration['unchecked'] = !(configuration['checked'] as bool);
+ configuration['host_unchecked'] = !(configuration['host_checked'] as bool);
+ configuration['unminified'] = !(configuration['minified'] as bool);
+ configuration['nocsp'] = !(configuration['csp'] as bool);
- String runtime = configuration['runtime'];
+ var runtime = configuration['runtime'] as String;
if (runtime == 'firefox') {
configuration['runtime'] == 'ff';
}
- String compiler = configuration['compiler'];
+ var compiler = configuration['compiler'] as String;
configuration['browser'] = TestUtils.isBrowserRuntime(runtime);
configuration['analyzer'] = TestUtils.isCommandLineAnalyzer(compiler);
@@ -697,7 +700,7 @@ compiler.''')
if (selectors is! Map) {
if (selectors == null) {
if (configuration['suite_dir'] != null) {
- var suite_path = new Path(configuration['suite_dir']);
+ var suite_path = new Path(configuration['suite_dir'] as String);
selectors = [suite_path.filename];
} else {
selectors = _defaultTestSelectors.toList();
@@ -707,7 +710,7 @@ compiler.''')
? configuration['exclude_suite'].split(',')
: [];
for (var exclude in excludeSuites) {
- if (selectors.contains(exclude)) {
+ if ((selectors as List).contains(exclude)) {
selectors.remove(exclude);
} else {
print("Warning: default selectors does not contain $exclude");
@@ -715,8 +718,8 @@ compiler.''')
}
}
var selectorMap = <String, RegExp>{};
- for (var i = 0; i < selectors.length; i++) {
- var pattern = selectors[i];
+ for (var i = 0; i < (selectors as List).length; i++) {
+ var pattern = selectors[i] as String;
var suite = pattern;
var slashLocation = pattern.indexOf('/');
if (slashLocation != -1) {
@@ -739,7 +742,7 @@ compiler.''')
// Put observatory_ui in a configuration with its own packages override.
// Only one value in the configuration map is mutable:
selectors = configuration['selectors'];
- if (selectors.containsKey('observatory_ui')) {
+ if ((selectors as Map<String, dynamic>).containsKey('observatory_ui')) {
if (selectors.length == 1) {
configuration['packages'] = TestUtils.dartDirUri
.resolve('runtime/observatory/.packages')
@@ -749,7 +752,8 @@ compiler.''')
// observatory_ui, and remove the key from the original selectors.
// The only mutable value in the map is the selectors, so a
// shallow copy is safe.
- var observatoryConfiguration = new Map.from(configuration);
+ var observatoryConfiguration =
+ new Map<String, dynamic>.from(configuration);
observatoryConfiguration['selectors'] = {
'observatory_ui': selectors['observatory_ui']
};
@@ -775,22 +779,22 @@ compiler.''')
}
// Expand the architectures.
- if (configuration['arch'].contains(',')) {
+ if ((configuration['arch'] as String).contains(',')) {
return _expandHelper('arch', configuration);
}
// Expand modes.
- if (configuration['mode'].contains(',')) {
+ if ((configuration['mode'] as String).contains(',')) {
return _expandHelper('mode', configuration);
}
// Expand compilers.
- if (configuration['compiler'].contains(',')) {
+ if ((configuration['compiler'] as String).contains(',')) {
return _expandHelper('compiler', configuration);
}
// Expand runtimes.
- var runtimes = configuration['runtime'];
+ var runtimes = configuration['runtime'] as String;
if (runtimes.contains(',')) {
return _expandHelper('runtime', configuration);
} else {
@@ -803,16 +807,16 @@ compiler.''')
// Adjust default timeout based on mode, compiler, and sometimes runtime.
if (configuration['timeout'] == -1) {
- var isReload =
- configuration['hot_reload'] || configuration['hot_reload_rollback'];
+ var isReload = (configuration['hot_reload'] as bool) ||
+ (configuration['hot_reload_rollback'] as bool);
int compilerMulitiplier =
new CompilerConfiguration(configuration).computeTimeoutMultiplier();
int runtimeMultiplier = new RuntimeConfiguration(configuration)
.computeTimeoutMultiplier(
- mode: configuration['mode'],
- isChecked: configuration['checked'],
+ mode: configuration['mode'] as String,
+ isChecked: configuration['checked'] as bool,
isReload: isReload,
- arch: configuration['arch']);
+ arch: configuration['arch'] as String);
configuration['timeout'] = 60 * compilerMulitiplier * runtimeMultiplier;
}
@@ -826,11 +830,12 @@ compiler.''')
/// option: The particular test option we are expanding.
/// configuration: The map containing all test configuration information
/// specified.
- List<Map> _expandHelper(String option, Map configuration) {
- var result = <Map>[];
+ List<Map<String, dynamic>> _expandHelper(
+ String option, Map<String, dynamic> configuration) {
+ var result = <Map<String, dynamic>>[];
var configs = configuration[option];
for (var config in configs.split(',')) {
- var newConfiguration = new Map.from(configuration);
+ var newConfiguration = new Map<String, dynamic>.from(configuration);
newConfiguration[option] = config;
result.addAll(_expandConfigurations(newConfiguration));
}
« no previous file with comments | « tools/testing/dart/http_server.dart ('k') | tools/testing/dart/package_testing_support.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698