Files
sdk/pkg/dev_compiler/test/dynamic/dartdevc_dynamic_test.dart
T
Johnni Winther c17e9c116e [cfe] Clean up backend imports
This updates backend imports to use reexports from api_prototype
or api_unstable.

TEST=existing

Change-Id: I8d9d1c76ef72c709c578acac5497064710ee5579
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/373462
Reviewed-by: Jens Johansen <jensj@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Ömer Ağacan <omersa@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2024-07-08 11:32:30 +00:00

46 lines
1.5 KiB
Dart

// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'package:_fe_analyzer_shared/src/messages/diagnostic_message.dart';
import 'package:front_end/src/api_prototype/testing.dart';
import 'package:kernel/ast.dart';
Future<void> main(List<String> args) async {
await run(dartdevcEntryPoints,
'pkg/dev_compiler/test/dynamic/dartdevc_allowed.json',
analyzedUrisFilter: dartdevcOnly,
verbose: args.contains('-v'),
generate: args.contains('-g'));
}
Future<void> run(List<Uri> entryPoints, String allowedListPath,
{bool verbose = false,
bool generate = false,
bool Function(Uri uri)? analyzedUrisFilter}) async {
await runAnalysis(entryPoints,
(DiagnosticMessageHandler onDiagnostic, Component component) {
DynamicVisitor(onDiagnostic, component, allowedListPath, analyzedUrisFilter)
.run(verbose: verbose, generate: generate);
});
}
/// Entry points used for analyzing dartdevc code.
final List<Uri> dartdevcEntryPoints = [
Uri.base.resolve('pkg/dev_compiler/bin/dartdevc.dart')
];
/// Filter function used to only analyze dartdevc source code.
bool dartdevcOnly(Uri uri) {
var text = '$uri';
for (var path in [
'package:_js_interop_checks/',
'package:dev_compiler/',
]) {
if (text.startsWith(path)) {
return true;
}
}
return false;
}