Chromium Code Reviews| Index: tests/compiler/dart2js/analyze_dart2js_helpers_test.dart |
| diff --git a/tests/compiler/dart2js/analyze_dart2js_helpers_test.dart b/tests/compiler/dart2js/analyze_dart2js_helpers_test.dart |
| index 7f531eb2a686fdd3edafee166f6339d737a747b6..d4d85ef24e1817cc3594e39acbcf7035bfa57f49 100644 |
| --- a/tests/compiler/dart2js/analyze_dart2js_helpers_test.dart |
| +++ b/tests/compiler/dart2js/analyze_dart2js_helpers_test.dart |
| @@ -48,9 +48,11 @@ main(List<String> arguments) { |
| options: options, showDiagnostics: verbose); |
| FormattingDiagnosticHandler diagnostics = |
| new FormattingDiagnosticHandler(compiler.provider); |
| - HelperAnalyzer analyzer = new HelperAnalyzer(diagnostics); |
| Directory dir = |
| new Directory.fromUri(Uri.base.resolve('pkg/compiler/lib/')); |
| + String helpersUriPrefix = dir.uri.resolve('src/helpers/').toString(); |
| + HelperAnalyzer analyzer = new HelperAnalyzer(diagnostics, helpersUriPrefix); |
| + LibraryElement helperLibrary; |
| for (FileSystemEntity entity in dir.listSync(recursive: true)) { |
| if (entity is File && entity.path.endsWith('.dart')) { |
| Uri file = Uri.base.resolve(nativeToUriPath(entity.path)); |
| @@ -59,6 +61,9 @@ main(List<String> arguments) { |
| } |
| LibraryElement library = await compiler.analyzeUri(file); |
| if (library != null) { |
| + if (library.libraryName == 'dart2js.helpers') { |
| + helperLibrary = library; |
| + } |
| library.forEachLocalMember((Element element) { |
| if (element is ClassElement) { |
| element.forEachLocalMember((AstElement member) { |
| @@ -71,12 +76,16 @@ main(List<String> arguments) { |
| } |
| } |
| } |
| + Expect.isNotNull(helperLibrary, 'Helper library not found'); |
| + Expect.isTrue(analyzer.isHelper(helperLibrary), |
| + "Helper library $helperLibrary is not considered a helper."); |
| Expect.isTrue(analyzer.errors.isEmpty, "Errors found."); |
| }); |
| } |
| class HelperAnalyzer extends TraversalVisitor { |
| final FormattingDiagnosticHandler diagnostics; |
| + final String helpersUriPrefix; |
| List<SourceSpan> errors = <SourceSpan>[]; |
| ResolvedAst resolvedAst; |
| @@ -86,7 +95,7 @@ class HelperAnalyzer extends TraversalVisitor { |
| AnalyzableElement get analyzedElement => resolvedAst.element; |
| - HelperAnalyzer(this.diagnostics) : super(null); |
| + HelperAnalyzer(this.diagnostics, this.helpersUriPrefix) : super(null); |
| @override |
| void apply(Node node, [_]) { |
| @@ -105,7 +114,7 @@ class HelperAnalyzer extends TraversalVisitor { |
| bool isHelper(Element element) { |
| Uri uri = element.library.canonicalUri; |
| - return '$uri'.startsWith('package:compiler/src/helpers/'); |
|
Johnni Winther
2016/05/26 12:13:21
With the change to use `compiler.analyzeUri` some
|
| + return '$uri'.startsWith(helpersUriPrefix); |
| } |
| void checkAccess(Node node, MemberElement element) { |