| Index: tests/compiler/dart2js/equivalence/id_equivalence_helper.dart
|
| diff --git a/tests/compiler/dart2js/equivalence/id_equivalence_helper.dart b/tests/compiler/dart2js/equivalence/id_equivalence_helper.dart
|
| index d89841238a3617963abffbb19c11feb2bac2d5b9..e491e2a844689f862a2d66e36344eedfc3f12298 100644
|
| --- a/tests/compiler/dart2js/equivalence/id_equivalence_helper.dart
|
| +++ b/tests/compiler/dart2js/equivalence/id_equivalence_helper.dart
|
| @@ -3,6 +3,8 @@
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| import 'dart:async';
|
| +import 'dart:io';
|
| +
|
| import 'package:compiler/src/commandline_options.dart';
|
| import 'package:compiler/src/common.dart';
|
| import 'package:compiler/src/common_elements.dart';
|
| @@ -165,6 +167,30 @@ class IdData {
|
| }
|
| }
|
|
|
| +/// Check code for all test files int [data] using [computeFromAst] and
|
| +/// [computeFromKernel] from the respective front ends. If [skipForKernel]
|
| +/// contains the name of the test file it isn't tested for kernel.
|
| +Future checkTests(Directory dataDir, ComputeMemberDataFunction computeFromAst,
|
| + ComputeMemberDataFunction computeFromKernel,
|
| + {List<String> skipForKernel: const <String>[], bool verbose: false}) async {
|
| + await for (FileSystemEntity entity in dataDir.list()) {
|
| + print('----------------------------------------------------------------');
|
| + print('Checking ${entity.uri}');
|
| + print('----------------------------------------------------------------');
|
| + String annotatedCode = await new File.fromUri(entity.uri).readAsString();
|
| + print('--from ast------------------------------------------------------');
|
| + await checkCode(annotatedCode, computeFromAst, compileFromSource,
|
| + verbose: verbose);
|
| + if (skipForKernel.contains(entity.uri.pathSegments.last)) {
|
| + print('--skipped for kernel------------------------------------------');
|
| + continue;
|
| + }
|
| + print('--from kernel---------------------------------------------------');
|
| + await checkCode(annotatedCode, computeFromKernel, compileFromDill,
|
| + verbose: verbose);
|
| + }
|
| +}
|
| +
|
| /// Compiles the [annotatedCode] with the provided [options] and calls
|
| /// [computeMemberData] for each member. The result is checked against the
|
| /// expected data derived from [annotatedCode].
|
|
|