Chromium Code Reviews| Index: tests/compiler/dart2js/analyze_test_test.dart |
| diff --git a/tests/compiler/dart2js/analyze_test_test.dart b/tests/compiler/dart2js/analyze_test_test.dart |
| index 5d6037318ed25fa393f882740f420b80b4b671db..be7fa7977d9c36b855234f87d4d47fa76ec275f9 100644 |
| --- a/tests/compiler/dart2js/analyze_test_test.dart |
| +++ b/tests/compiler/dart2js/analyze_test_test.dart |
| @@ -26,10 +26,6 @@ import 'memory_compiler.dart'; |
| */ |
| // TODO(johnniwinther): Support canonical URIs as keys. |
| const Map<String, List/*<String|MessageKind>*/> WHITE_LIST = const { |
| - // Several tests import mirrors; any of these might trigger the warning. |
| - ".dart": const [ |
| - MessageKind.IMPORT_EXPERIMENTAL_MIRRORS, |
| - ], |
| "/test/src/util/": const [ |
| "Library 'package:async/async.dart' doesn't export a " |
| "'ForkableStream' declaration.", |
| @@ -55,24 +51,50 @@ const List<String> SKIP_LIST = const <String>[ |
| "http_test.dart", |
| ]; |
| +const List<MessageKind> MESSAGE_SKIP_LIST = const <MessageKind>[ |
| + // TODO(johnniwinther): Support checking of this warning. |
|
Bill Hesse
2016/03/30 09:43:50
Is there an issue filed for this - TODOs should re
Johnni Winther
2016/03/30 10:04:02
It's on my mental buglist ;-) Created an issue!
|
| + MessageKind.IMPORT_EXPERIMENTAL_MIRRORS, |
| +]; |
| + |
| main(List<String> arguments) { |
| List<String> options = <String>[]; |
| if (arguments.contains('-v') || arguments.contains(Flags.verbose)) { |
| options.add(Flags.verbose); |
| } |
| + List<Uri> uriList = <Uri>[]; |
| + for (String arg in arguments) { |
| + if (!arg.startsWith('-')) { |
| + for (String line in new File(arg).readAsLinesSync()) { |
| + line = line.trim(); |
| + if (line.startsWith('Analyzing uri: ')) { |
| + int filenameOffset = line.indexOf('tests/compiler/dart2js/'); |
| + if (filenameOffset != -1) { |
| + uriList.add(Uri.base.resolve( |
| + nativeToUriPath(line.substring(filenameOffset)))); |
| + } |
| + } |
| + } |
| + } |
| + } |
| + |
| asyncTest(() async { |
| - List<Uri> uriList = <Uri>[]; |
| - Directory dir = |
| - new Directory.fromUri(Uri.base.resolve('tests/compiler/dart2js/')); |
| - for (FileSystemEntity entity in dir.listSync(recursive: true)) { |
| - if (entity is File && entity.path.endsWith('.dart')) { |
| - Uri file = Uri.base.resolve(nativeToUriPath(entity.path)); |
| - if (!SKIP_LIST.any((skip) => file.path.contains(skip))) { |
| - uriList.add(file); |
| + if (uriList.isEmpty) { |
| + Directory dir = |
| + new Directory.fromUri(Uri.base.resolve('tests/compiler/dart2js/')); |
| + for (FileSystemEntity entity in dir.listSync(recursive: true)) { |
| + if (entity is File && entity.path.endsWith('.dart')) { |
| + Uri file = Uri.base.resolve(nativeToUriPath(entity.path)); |
| + if (!SKIP_LIST.any((skip) => file.path.contains(skip))) { |
| + uriList.add(file); |
| + } |
| } |
| } |
| } |
| await analyze( |
| - uriList, WHITE_LIST, mode: AnalysisMode.URI, options: options); |
| + uriList, |
| + WHITE_LIST, |
| + mode: AnalysisMode.URI, |
| + options: options, |
| + skipList: MESSAGE_SKIP_LIST); |
| }); |
| } |