[CFE] add --updateExpectations to coverage suite

So running `pkg/front_end/test/coverage_suite.dart --updateExpectations`
will update `pkg/front_end/test/coverage_suite_expected.dart` and a `git
diff` will give an overview of what changed.

Also save both number of hits and number of misses in the
"expect-file". If nothing else it will give some context
about what has changed.

Also cleanup json coverage output to be sorted and not
include "misses" that are also "hits" (the VM can give
this information).

Change-Id: I426681dde3d4d2ad0a9a7dfa474292c699223d68
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/370520
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
This commit is contained in:
Jens Johansen 2024-06-11 12:36:05 +00:00 committed by Commit Queue
parent 4be693af0b
commit 5a49a95b39
3 changed files with 1053 additions and 313 deletions

View file

@ -203,14 +203,16 @@ class FileCoverage {
Map<String, Object?> toJson() {
List<int> notCompiledRanges = [];
for (var pair in notCompiled) {
for (var pair in notCompiled.toList()
..sort((a, b) => a.startPos.compareTo(b.startPos))) {
notCompiledRanges.add(pair.startPos);
notCompiledRanges.add(pair.endPos);
}
misses.removeAll(hits);
return {
"uri": uri.toString(),
"hits": hits.toList(),
"misses": misses.toList(),
"hits": hits.toList()..sort(),
"misses": misses.toList()..sort(),
"notCompiledRanges": notCompiledRanges,
};
}

View file

@ -11,296 +11,9 @@ import 'package:args/src/arg_results.dart';
import '../tool/coverage_merger.dart' as coverageMerger;
bool debug = false;
part 'coverage_suite_expected.dart';
// This is the state as of 8b8ec2aa3d91a7dc9e61bd7b9e576f82bf2b52c3,
// using out/ReleaseX64/dart-sdk/bin/dart (which for instance makes a
// difference for compute_platform_binaries_location.dart).
const Map<String, double> _expect = {
"package:front_end/src/api_prototype/compiler_options.dart":
18.53448275862069,
"package:front_end/src/api_prototype/experimental_flags.dart":
81.08108108108108,
"package:front_end/src/api_prototype/experimental_flags_generated.dart":
53.605769230769226,
"package:front_end/src/api_prototype/file_system.dart": 33.33333333333333,
"package:front_end/src/api_prototype/incremental_kernel_generator.dart":
6.666666666666667,
"package:front_end/src/api_prototype/kernel_generator.dart": 0.0,
"package:front_end/src/api_prototype/language_version.dart": 0.0,
"package:front_end/src/api_prototype/lowering_predicates.dart":
3.6036036036036037,
"package:front_end/src/api_prototype/memory_file_system.dart": 25.0,
"package:front_end/src/api_prototype/standard_file_system.dart":
38.46153846153847,
"package:front_end/src/api_prototype/summary_generator.dart": 0.0,
"package:front_end/src/api_prototype/terminal_color_support.dart": 0.0,
"package:front_end/src/api_unstable/compiler_state.dart": 0.0,
"package:front_end/src/api_unstable/dart2js.dart": 0.0,
"package:front_end/src/api_unstable/util.dart": 37.03703703703704,
"package:front_end/src/base/instrumentation.dart": 100.0,
"package:front_end/src/base/processed_options.dart": 38.81578947368421,
"package:front_end/src/compute_platform_binaries_location.dart":
66.66666666666666,
"package:front_end/src/fasta/builder/builder.dart": 63.63636363636363,
"package:front_end/src/fasta/builder/builder_mixins.dart": 100.0,
"package:front_end/src/fasta/builder/builtin_type_declaration_builder.dart":
70.0,
"package:front_end/src/fasta/builder/class_builder.dart": 71.14427860696517,
"package:front_end/src/fasta/builder/constructor_reference_builder.dart":
100.0,
"package:front_end/src/fasta/builder/declaration_builder.dart": 100.0,
"package:front_end/src/fasta/builder/dynamic_type_declaration_builder.dart":
100.0,
"package:front_end/src/fasta/builder/extension_builder.dart": 50.0,
"package:front_end/src/fasta/builder/extension_type_declaration_builder.dart":
100.0,
"package:front_end/src/fasta/builder/fixed_type_builder.dart":
22.727272727272727,
"package:front_end/src/fasta/builder/formal_parameter_builder.dart":
95.85492227979275,
"package:front_end/src/fasta/builder/function_type_builder.dart":
77.95275590551181,
"package:front_end/src/fasta/builder/future_or_type_declaration_builder.dart":
0.0,
"package:front_end/src/fasta/builder/inferable_type_builder.dart": 100.0,
"package:front_end/src/fasta/builder/invalid_type_builder.dart":
33.33333333333333,
"package:front_end/src/fasta/builder/invalid_type_declaration_builder.dart":
85.0,
"package:front_end/src/fasta/builder/library_builder.dart": 81.63265306122449,
"package:front_end/src/fasta/builder/member_builder.dart": 96.75324675324676,
"package:front_end/src/fasta/builder/metadata_builder.dart":
86.04651162790698,
"package:front_end/src/fasta/builder/mixin_application_builder.dart": 100.0,
"package:front_end/src/fasta/builder/modifier_builder.dart":
76.47058823529412,
"package:front_end/src/fasta/builder/named_type_builder.dart":
74.74747474747475,
"package:front_end/src/fasta/builder/never_type_declaration_builder.dart":
76.92307692307693,
"package:front_end/src/fasta/builder/null_type_declaration_builder.dart":
33.33333333333333,
"package:front_end/src/fasta/builder/nullability_builder.dart": 100.0,
"package:front_end/src/fasta/builder/omitted_type_builder.dart":
34.146341463414636,
"package:front_end/src/fasta/builder/omitted_type_declaration_builder.dart":
0.0,
"package:front_end/src/fasta/builder/prefix_builder.dart": 89.1891891891892,
"package:front_end/src/fasta/builder/record_type_builder.dart":
77.43589743589745,
"package:front_end/src/fasta/builder/type_alias_builder.dart":
78.99159663865547,
"package:front_end/src/fasta/builder/type_builder.dart": 77.77777777777779,
"package:front_end/src/fasta/builder/type_declaration_builder.dart": 90.0,
"package:front_end/src/fasta/builder/type_variable_builder.dart":
78.42227378190255,
"package:front_end/src/fasta/builder/void_type_declaration_builder.dart":
100.0,
"package:front_end/src/fasta/builder_graph.dart": 54.71698113207547,
"package:front_end/src/fasta/codes/fasta_codes_cfe_generated.dart":
73.0892742453436,
"package:front_end/src/fasta/codes/type_labeler.dart": 82,
"package:front_end/src/fasta/combinator.dart": 100.0,
"package:front_end/src/fasta/command_line_reporting.dart": 68.68686868686868,
"package:front_end/src/fasta/compiler_context.dart": 90.1639344262295,
"package:front_end/src/fasta/configuration.dart": 100.0,
"package:front_end/src/fasta/crash.dart": 59.09090909090909,
"package:front_end/src/fasta/dill/dill_builder_mixins.dart": 100.0,
"package:front_end/src/fasta/dill/dill_class_builder.dart": 92.34972677595628,
"package:front_end/src/fasta/dill/dill_extension_builder.dart": 80,
"package:front_end/src/fasta/dill/dill_extension_member_builder.dart":
70.29702970297029,
"package:front_end/src/fasta/dill/dill_extension_type_declaration_builder.dart":
95.42483660130719,
"package:front_end/src/fasta/dill/dill_extension_type_member_builder.dart":
83.76623376623377,
"package:front_end/src/fasta/dill/dill_library_builder.dart": 77.0,
"package:front_end/src/fasta/dill/dill_loader.dart": 76.58536585365854,
"package:front_end/src/fasta/dill/dill_member_builder.dart":
86.52173913043478,
"package:front_end/src/fasta/dill/dill_target.dart": 74.35897435897436,
"package:front_end/src/fasta/dill/dill_type_alias_builder.dart":
95.83333333333334,
"package:front_end/src/fasta/export.dart": 72.22222222222221,
"package:front_end/src/fasta/hybrid_file_system.dart": 50.0,
"package:front_end/src/fasta/identifiers.dart": 84.78260869565217,
"package:front_end/src/fasta/ignored_parser_errors.dart": 100.0,
"package:front_end/src/fasta/import.dart": 100.0,
"package:front_end/src/fasta/import_chains.dart": 96.96969696969697,
"package:front_end/src/fasta/incremental_compiler.dart": 47.61111111111111,
"package:front_end/src/fasta/incremental_serializer.dart": 0.0,
"package:front_end/src/fasta/kernel/augmentation_lowering.dart": 100.0,
"package:front_end/src/fasta/kernel/benchmarker.dart": 0.0,
"package:front_end/src/fasta/kernel/body_builder.dart": 90.95321558581637,
"package:front_end/src/fasta/kernel/body_builder_context.dart":
68.31501831501832,
"package:front_end/src/fasta/kernel/collections.dart": 36.44736842105264,
"package:front_end/src/fasta/kernel/combined_member_signature.dart":
91.29411764705883,
"package:front_end/src/fasta/kernel/const_conditional_simplifier.dart": 50.0,
"package:front_end/src/fasta/kernel/constant_collection_builders.dart":
64.92307692307693,
"package:front_end/src/fasta/kernel/constant_evaluator.dart":
78.68572647749093,
"package:front_end/src/fasta/kernel/constant_int_folder.dart":
92.04545454545455,
"package:front_end/src/fasta/kernel/constructor_tearoff_lowering.dart":
95.11278195488721,
"package:front_end/src/fasta/kernel/exhaustiveness.dart": 74.57098283931357,
"package:front_end/src/fasta/kernel/expression_generator.dart":
79.69046114971573,
"package:front_end/src/fasta/kernel/expression_generator_helper.dart": 100.0,
"package:front_end/src/fasta/kernel/forest.dart": 90.27777777777779,
"package:front_end/src/fasta/kernel/forwarding_node.dart": 94.4927536231884,
"package:front_end/src/fasta/kernel/hierarchy/class_member.dart":
83.1896551724138,
"package:front_end/src/fasta/kernel/hierarchy/delayed.dart": 100.0,
"package:front_end/src/fasta/kernel/hierarchy/extension_type_members.dart":
87.52834467120182,
"package:front_end/src/fasta/kernel/hierarchy/hierarchy_builder.dart":
50.256410256410255,
"package:front_end/src/fasta/kernel/hierarchy/hierarchy_node.dart":
93.33333333333333,
"package:front_end/src/fasta/kernel/hierarchy/members_builder.dart":
98.51851851851852,
"package:front_end/src/fasta/kernel/hierarchy/members_node.dart":
91.44427001569859,
"package:front_end/src/fasta/kernel/hierarchy/mixin_inferrer.dart":
61.53846153846154,
"package:front_end/src/fasta/kernel/implicit_field_type.dart":
52.24719101123596,
"package:front_end/src/fasta/kernel/implicit_type_argument.dart":
2.941176470588235,
"package:front_end/src/fasta/kernel/internal_ast.dart": 46.40625,
"package:front_end/src/fasta/kernel/invalid_type.dart": 74.13793103448276,
"package:front_end/src/fasta/kernel/kernel_constants.dart": 45.45454545454545,
"package:front_end/src/fasta/kernel/kernel_helper.dart": 98.95833333333334,
"package:front_end/src/fasta/kernel/kernel_target.dart": 78,
"package:front_end/src/fasta/kernel/kernel_variable_builder.dart":
61.111111111111114,
"package:front_end/src/fasta/kernel/late_lowering.dart": 100.0,
"package:front_end/src/fasta/kernel/load_library_builder.dart":
87.17948717948718,
"package:front_end/src/fasta/kernel/macro/annotation_parser.dart":
0.1984126984126984,
"package:front_end/src/fasta/kernel/macro/identifiers.dart": 0.0,
"package:front_end/src/fasta/kernel/macro/introspectors.dart": 0.0,
"package:front_end/src/fasta/kernel/macro/macro.dart": 0.22675736961451248,
"package:front_end/src/fasta/kernel/macro/offsets.dart": 0.0,
"package:front_end/src/fasta/kernel/macro/types.dart": 0.0,
"package:front_end/src/fasta/kernel/member_covariance.dart":
89.23611111111111,
"package:front_end/src/fasta/kernel/resource_identifier.dart":
39.473684210526315,
"package:front_end/src/fasta/kernel/static_weak_references.dart":
15.238095238095239,
"package:front_end/src/fasta/kernel/try_constant_evaluator.dart":
19.753086419753085,
"package:front_end/src/fasta/kernel/type_algorithms.dart": 93.96728016359918,
"package:front_end/src/fasta/kernel/type_builder_computer.dart":
90.20618556701031,
"package:front_end/src/fasta/kernel/utils.dart": 37.93103448275862,
"package:front_end/src/fasta/kernel/verifier.dart": 56.25,
"package:front_end/src/fasta/library_graph.dart": 79.3103448275862,
"package:front_end/src/fasta/messages.dart": 30.0,
"package:front_end/src/fasta/modifier.dart": 100.0,
"package:front_end/src/fasta/operator.dart": 100.0,
"package:front_end/src/fasta/problems.dart": 0.0,
"package:front_end/src/fasta/scope.dart": 79.22606924643586,
"package:front_end/src/fasta/source/class_declaration.dart":
80.29556650246306,
"package:front_end/src/fasta/source/diet_listener.dart": 89.18539325842697,
"package:front_end/src/fasta/source/diet_parser.dart": 100.0,
"package:front_end/src/fasta/source/name_scheme.dart": 93.19148936170212,
"package:front_end/src/fasta/source/offset_map.dart": 95.16129032258065,
"package:front_end/src/fasta/source/outline_builder.dart": 91.37159137159138,
"package:front_end/src/fasta/source/redirecting_factory_body.dart":
94.44444444444444,
"package:front_end/src/fasta/source/source_builder_mixins.dart":
88.8268156424581,
"package:front_end/src/fasta/source/source_class_builder.dart":
85.51136363636364,
"package:front_end/src/fasta/source/source_constructor_builder.dart":
92.65658747300216,
"package:front_end/src/fasta/source/source_enum_builder.dart":
95.73560767590618,
"package:front_end/src/fasta/source/source_extension_builder.dart":
61.261261261261254,
"package:front_end/src/fasta/source/source_extension_type_declaration_builder.dart":
84.0,
"package:front_end/src/fasta/source/source_factory_builder.dart":
92.22222222222223,
"package:front_end/src/fasta/source/source_field_builder.dart": 89,
"package:front_end/src/fasta/source/source_function_builder.dart":
89.29663608562691,
"package:front_end/src/fasta/source/source_library_builder.dart":
83.27291558777836,
"package:front_end/src/fasta/source/source_loader.dart": 79.344409519533,
"package:front_end/src/fasta/source/source_member_builder.dart":
40.32258064516129,
"package:front_end/src/fasta/source/source_procedure_builder.dart":
96.11829944547135,
"package:front_end/src/fasta/source/source_type_alias_builder.dart":
97.63313609467455,
"package:front_end/src/fasta/source/stack_listener_impl.dart":
64.44444444444444,
"package:front_end/src/fasta/ticker.dart": 73.07692307692307,
"package:front_end/src/fasta/type_inference/closure_context.dart":
84.23236514522821,
"package:front_end/src/fasta/type_inference/delayed_expressions.dart":
77.55474452554745,
"package:front_end/src/fasta/type_inference/external_ast_helper.dart":
97.88732394366197,
"package:front_end/src/fasta/type_inference/factor_type.dart":
76.19047619047619,
"package:front_end/src/fasta/type_inference/for_in.dart": 75.47169811320755,
"package:front_end/src/fasta/type_inference/inference_results.dart":
85.12820512820512,
"package:front_end/src/fasta/type_inference/inference_visitor.dart":
90.17588521175654,
"package:front_end/src/fasta/type_inference/inference_visitor_base.dart":
84.20487106017191,
"package:front_end/src/fasta/type_inference/matching_cache.dart":
80.26509572901325,
"package:front_end/src/fasta/type_inference/matching_expressions.dart":
98.10964083175804,
"package:front_end/src/fasta/type_inference/object_access_target.dart":
77.19298245614034,
"package:front_end/src/fasta/type_inference/shared_type_analyzer.dart": 98.0,
"package:front_end/src/fasta/type_inference/standard_bounds.dart":
71.42857142857143,
"package:front_end/src/fasta/type_inference/type_constraint_gatherer.dart":
59,
"package:front_end/src/fasta/type_inference/type_demotion.dart":
77.77777777777779,
"package:front_end/src/fasta/type_inference/type_inference_engine.dart":
88.06509945750453,
"package:front_end/src/fasta/type_inference/type_inferrer.dart":
51.17647058823529,
"package:front_end/src/fasta/type_inference/type_schema.dart":
36.666666666666664,
"package:front_end/src/fasta/type_inference/type_schema_elimination.dart":
88.88888888888889,
"package:front_end/src/fasta/type_inference/type_schema_environment.dart":
79.50530035335689,
"package:front_end/src/fasta/uri_offset.dart": 100.0,
"package:front_end/src/fasta/uri_translator.dart": 75.92592592592592,
"package:front_end/src/fasta/uris.dart": 100.0,
"package:front_end/src/fasta/util/error_reporter_file_copier.dart": 0.0,
"package:front_end/src/fasta/util/experiment_environment_getter.dart":
85.71428571428571,
"package:front_end/src/fasta/util/helpers.dart": 52.63157894736842,
"package:front_end/src/fasta/util/parser_ast.dart": 5.567451820128479,
"package:front_end/src/fasta/util/parser_ast_helper.dart": 20.424013434089,
"package:front_end/src/fasta/util/textual_outline.dart": 86.54205607476636,
"package:front_end/src/kernel_generator_impl.dart": 28.645833333333332,
"package:front_end/src/macros/isolate_macro_serializer.dart": 0.0,
"package:front_end/src/macros/macro_serializer.dart": 0.0,
"package:front_end/src/macros/macro_target.dart": 0.0,
"package:front_end/src/macros/macro_target_io.dart": 0.0,
"package:front_end/src/macros/temp_dir_macro_serializer.dart": 0.0,
};
bool debug = false;
Future<void> main([List<String> arguments = const <String>[]]) async {
Directory coverageTmpDir =
@ -336,6 +49,7 @@ Future<void> _run(Directory coverageTmpDir, List<String> arguments) async {
print("Starting shard ${i + 1} of ${options.numberOfWorkers}");
futures.add(Process.run(Platform.resolvedExecutable, [
"--enable-asserts",
"--deterministic",
"pkg/front_end/test/fasta/strong_suite.dart",
"-DskipVm=true",
"--shards=${options.numberOfWorkers}",
@ -388,6 +102,20 @@ Future<void> _run(Directory coverageTmpDir, List<String> arguments) async {
}
}
StringBuffer updatedExpectations = new StringBuffer();
updatedExpectations.write("""
// Copyright (c) 2024, 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.
part of "coverage_suite.dart";
// This is the currently recorded state
// using out/ReleaseX64/dart-sdk/bin/dart (which for instance makes a
// difference for compute_platform_binaries_location.dart).
const Map<String, ({int hitCount, int missCount})> _expect = {
""");
for (MapEntry<Uri, coverageMerger.CoverageInfo> coverageEntry
in coverageData.entries) {
if (coverageEntry.value.error) {
@ -398,33 +126,61 @@ Future<void> _run(Directory coverageTmpDir, List<String> arguments) async {
int hitCount = coverageEntry.value.hitCount;
int missCount = coverageEntry.value.missCount;
double percent = (hitCount / (hitCount + missCount) * 100);
if (debug) {
print("\"${coverageEntry.key}\": $percent,");
if (options.updateExpectations) {
updatedExpectations.writeln(" // $percent%.");
updatedExpectations.writeln(" \"${coverageEntry.key}\": "
"(hitCount: $hitCount, missCount: $missCount,),");
continue;
}
int requireAtLeast =
(_expect[coverageEntry.key.toString()] ?? 0.0).floor();
bool pass = percent >= requireAtLeast;
if (!pass) {
sb.write("${coverageEntry.value.visualization}");
sb.write("\n\nExpected at least $requireAtLeast%, got $percent% "
"($hitCount hits and $missCount misses).");
sb.write("\n\nTo re-run this test, run:");
var extraFlags = _assertsEnabled ? ' --enable-asserts' : '';
// It looks like coverage results vary slightly based on the number of
// tasks, so include a `--tasks=` argument in the repro instructions.
//
// TODO(paulberry): why do coverage results vary based on the number of
// tasks? (Note: possibly due to
// https://github.com/dart-lang/sdk/issues/42061)
sb.write(
"\n\n dart$extraFlags pkg/front_end/test/coverage_suite.dart "
"--tasks=${options.numberOfWorkers}");
bool pass = true;
({int hitCount, int missCount})? expected =
_expect[coverageEntry.key.toString()];
if (expected != null) {
// TODO(jensj): Should we warn if hitCount goes down?
// Or be ok with it if both hitCount and missCount goes up?
// Or something else?
double expectedPercent = (expected.hitCount /
(expected.hitCount + expected.missCount) *
100);
int requireAtLeast = expectedPercent.floor();
pass = percent >= requireAtLeast;
if (!pass) {
sb.write("${coverageEntry.value.visualization}");
sb.write("\n\nExpected at least $requireAtLeast%, got $percent% "
"($hitCount hits (expected: ${expected.hitCount}) and "
"$missCount misses (expected: ${expected.missCount})).");
sb.write("\n\nTo re-run this test, run:");
var extraFlags = _assertsEnabled ? ' --enable-asserts' : '';
// It looks like coverage results vary slightly based on the number of
// tasks, so include a `--tasks=` argument in the repro instructions.
//
// TODO(paulberry): why do coverage results vary based on the number
// of tasks? (Note: possibly due to
// https://github.com/dart-lang/sdk/issues/42061)
sb.write(
"\n\n dart$extraFlags pkg/front_end/test/coverage_suite.dart "
"--tasks=${options.numberOfWorkers}");
sb.write("\n\n Or update the expectations directly via");
sb.write(
"\n\n dart$extraFlags pkg/front_end/test/coverage_suite.dart "
"--tasks=${options.numberOfWorkers} --updateExpectations");
}
}
addResult(coverageEntry.key.toString(), pass,
log: sb.isEmpty ? null : sb.toString());
}
}
updatedExpectations.writeln("};");
if (options.updateExpectations) {
File f = new File.fromUri(
Uri.base.resolve("pkg/front_end/test/coverage_suite_expected.dart"));
f.writeAsStringSync(updatedExpectations.toString());
ProcessResult formatResult =
Process.runSync(Platform.resolvedExecutable, ["format", f.path]);
print("Formatting exit-code: ${formatResult.exitCode}");
}
// Write results.json and logs.json.
Uri resultJsonUri = options.outputDirectory.resolve("results.json");
Uri logsJsonUri = options.outputDirectory.resolve("logs.json");
@ -460,6 +216,7 @@ class Options {
final String? configurationName;
final bool verbose;
final bool debug;
final bool updateExpectations;
final Uri outputDirectory;
final int numberOfWorkers;
@ -467,6 +224,7 @@ class Options {
this.configurationName,
this.verbose,
this.debug,
this.updateExpectations,
this.outputDirectory, {
required this.numberOfWorkers,
});
@ -485,6 +243,8 @@ class Options {
abbr: "j",
help: "The number of parallel tasks to run.",
defaultsTo: "${getDefaultThreads()}")
..addFlag("updateExpectations",
help: "update expectations", defaultsTo: false)
// These are not used but are here for compatibility with the test system.
..addOption("shards", help: "(Ignored) Number of shards", defaultsTo: "1")
..addOption("shard",
@ -501,6 +261,7 @@ class Options {
if (tasks == null || tasks < 1) {
throw "--tasks (-j) has to be an integer >= 1";
}
bool updateExpectations = parsedOptions["updateExpectations"];
if (verbose) {
print("NOTE: Created with options\n "
@ -508,13 +269,15 @@ class Options {
"verbose = ${verbose},\n "
"debug = ${debug},\n "
"${outputDirectory},\n "
"numberOfWorkers: ${tasks}");
"numberOfWorkers: ${tasks},\n "
"updateExpectations = ${updateExpectations}");
}
return Options(
parsedOptions["named-configuration"],
verbose,
debug,
updateExpectations,
outputDirectory,
numberOfWorkers: tasks,
);

View file

@ -0,0 +1,975 @@
// Copyright (c) 2024, 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.
part of "coverage_suite.dart";
// This is the currently recorded state
// using out/ReleaseX64/dart-sdk/bin/dart (which for instance makes a
// difference for compute_platform_binaries_location.dart).
const Map<String, ({int hitCount, int missCount})> _expect = {
// 18.53448275862069%.
"package:front_end/src/api_prototype/compiler_options.dart": (
hitCount: 43,
missCount: 189,
),
// 86.48648648648648%.
"package:front_end/src/api_prototype/experimental_flags.dart": (
hitCount: 64,
missCount: 10,
),
// 55.28846153846154%.
"package:front_end/src/api_prototype/experimental_flags_generated.dart": (
hitCount: 230,
missCount: 186,
),
// 33.33333333333333%.
"package:front_end/src/api_prototype/file_system.dart": (
hitCount: 2,
missCount: 4,
),
// 6.666666666666667%.
"package:front_end/src/api_prototype/incremental_kernel_generator.dart": (
hitCount: 1,
missCount: 14,
),
// 0.0%.
"package:front_end/src/api_prototype/kernel_generator.dart": (
hitCount: 0,
missCount: 18,
),
// 0.0%.
"package:front_end/src/api_prototype/language_version.dart": (
hitCount: 0,
missCount: 67,
),
// 3.6036036036036037%.
"package:front_end/src/api_prototype/lowering_predicates.dart": (
hitCount: 12,
missCount: 321,
),
// 25.0%.
"package:front_end/src/api_prototype/memory_file_system.dart": (
hitCount: 23,
missCount: 69,
),
// 38.46153846153847%.
"package:front_end/src/api_prototype/standard_file_system.dart": (
hitCount: 40,
missCount: 64,
),
// 0.0%.
"package:front_end/src/api_prototype/summary_generator.dart": (
hitCount: 0,
missCount: 4,
),
// 0.0%.
"package:front_end/src/api_prototype/terminal_color_support.dart": (
hitCount: 0,
missCount: 6,
),
// 0.0%.
"package:front_end/src/api_unstable/compiler_state.dart": (
hitCount: 0,
missCount: 12,
),
// 0.0%.
"package:front_end/src/api_unstable/dart2js.dart": (
hitCount: 0,
missCount: 74,
),
// 37.03703703703704%.
"package:front_end/src/api_unstable/util.dart": (
hitCount: 10,
missCount: 17,
),
// 100.0%.
"package:front_end/src/base/instrumentation.dart": (
hitCount: 29,
missCount: 0,
),
// 39.86486486486486%.
"package:front_end/src/base/processed_options.dart": (
hitCount: 236,
missCount: 356,
),
// 71.23287671232876%.
"package:front_end/src/compute_platform_binaries_location.dart": (
hitCount: 52,
missCount: 21,
),
// 0.0%.
"package:front_end/src/fasta/builder/augmentation_iterator.dart": (
hitCount: 0,
missCount: 17,
),
// 64.44444444444444%.
"package:front_end/src/fasta/builder/builder.dart": (
hitCount: 29,
missCount: 16,
),
// 100.0%.
"package:front_end/src/fasta/builder/builder_mixins.dart": (
hitCount: 42,
missCount: 0,
),
// 70.0%.
"package:front_end/src/fasta/builder/builtin_type_declaration_builder.dart": (
hitCount: 7,
missCount: 3,
),
// 71.14427860696517%.
"package:front_end/src/fasta/builder/class_builder.dart": (
hitCount: 143,
missCount: 58,
),
// 100.0%.
"package:front_end/src/fasta/builder/constructor_reference_builder.dart": (
hitCount: 52,
missCount: 0,
),
// 100.0%.
"package:front_end/src/fasta/builder/declaration_builder.dart": (
hitCount: 25,
missCount: 0,
),
// 100.0%.
"package:front_end/src/fasta/builder/dynamic_type_declaration_builder.dart": (
hitCount: 2,
missCount: 0,
),
// 50.0%.
"package:front_end/src/fasta/builder/extension_builder.dart": (
hitCount: 4,
missCount: 4,
),
// 100.0%.
"package:front_end/src/fasta/builder/extension_type_declaration_builder.dart":
(
hitCount: 17,
missCount: 0,
),
// 22.727272727272727%.
"package:front_end/src/fasta/builder/fixed_type_builder.dart": (
hitCount: 5,
missCount: 17,
),
// 95.85492227979275%.
"package:front_end/src/fasta/builder/formal_parameter_builder.dart": (
hitCount: 185,
missCount: 8,
),
// 77.95275590551181%.
"package:front_end/src/fasta/builder/function_type_builder.dart": (
hitCount: 99,
missCount: 28,
),
// 0.0%.
"package:front_end/src/fasta/builder/future_or_type_declaration_builder.dart":
(
hitCount: 0,
missCount: 10,
),
// 100.0%.
"package:front_end/src/fasta/builder/inferable_type_builder.dart": (
hitCount: 27,
missCount: 0,
),
// 33.33333333333333%.
"package:front_end/src/fasta/builder/invalid_type_builder.dart": (
hitCount: 4,
missCount: 8,
),
// 85.0%.
"package:front_end/src/fasta/builder/invalid_type_declaration_builder.dart": (
hitCount: 17,
missCount: 3,
),
// 81.63265306122449%.
"package:front_end/src/fasta/builder/library_builder.dart": (
hitCount: 80,
missCount: 18,
),
// 97.38562091503267%.
"package:front_end/src/fasta/builder/member_builder.dart": (
hitCount: 149,
missCount: 4,
),
// 86.04651162790698%.
"package:front_end/src/fasta/builder/metadata_builder.dart": (
hitCount: 37,
missCount: 6,
),
// 100.0%.
"package:front_end/src/fasta/builder/mixin_application_builder.dart": (
hitCount: 1,
missCount: 0,
),
// 85.0%.
"package:front_end/src/fasta/builder/modifier_builder.dart": (
hitCount: 17,
missCount: 3,
),
// 74.74747474747475%.
"package:front_end/src/fasta/builder/named_type_builder.dart": (
hitCount: 370,
missCount: 125,
),
// 76.92307692307693%.
"package:front_end/src/fasta/builder/never_type_declaration_builder.dart": (
hitCount: 10,
missCount: 3,
),
// 33.33333333333333%.
"package:front_end/src/fasta/builder/null_type_declaration_builder.dart": (
hitCount: 2,
missCount: 4,
),
// 100.0%.
"package:front_end/src/fasta/builder/nullability_builder.dart": (
hitCount: 24,
missCount: 0,
),
// 34.146341463414636%.
"package:front_end/src/fasta/builder/omitted_type_builder.dart": (
hitCount: 28,
missCount: 54,
),
// 0.0%.
"package:front_end/src/fasta/builder/omitted_type_declaration_builder.dart": (
hitCount: 0,
missCount: 13,
),
// 89.47368421052632%.
"package:front_end/src/fasta/builder/prefix_builder.dart": (
hitCount: 34,
missCount: 4,
),
// 77.43589743589745%.
"package:front_end/src/fasta/builder/record_type_builder.dart": (
hitCount: 151,
missCount: 44,
),
// 78.99159663865547%.
"package:front_end/src/fasta/builder/type_alias_builder.dart": (
hitCount: 188,
missCount: 50,
),
// 77.77777777777779%.
"package:front_end/src/fasta/builder/type_builder.dart": (
hitCount: 56,
missCount: 16,
),
// 90.0%.
"package:front_end/src/fasta/builder/type_declaration_builder.dart": (
hitCount: 9,
missCount: 1,
),
// 78.42227378190255%.
"package:front_end/src/fasta/builder/type_variable_builder.dart": (
hitCount: 338,
missCount: 93,
),
// 100.0%.
"package:front_end/src/fasta/builder/void_type_declaration_builder.dart": (
hitCount: 2,
missCount: 0,
),
// 54.71698113207547%.
"package:front_end/src/fasta/builder_graph.dart": (
hitCount: 29,
missCount: 24,
),
// 73.0892742453436%.
"package:front_end/src/fasta/codes/fasta_codes_cfe_generated.dart": (
hitCount: 1138,
missCount: 419,
),
// 82.92682926829268%.
"package:front_end/src/fasta/codes/type_labeler.dart": (
hitCount: 510,
missCount: 105,
),
// 100.0%.
"package:front_end/src/fasta/combinator.dart": (
hitCount: 9,
missCount: 0,
),
// 68.68686868686868%.
"package:front_end/src/fasta/command_line_reporting.dart": (
hitCount: 68,
missCount: 31,
),
// 90.1639344262295%.
"package:front_end/src/fasta/compiler_context.dart": (
hitCount: 55,
missCount: 6,
),
// 100.0%.
"package:front_end/src/fasta/configuration.dart": (
hitCount: 1,
missCount: 0,
),
// 59.09090909090909%.
"package:front_end/src/fasta/crash.dart": (
hitCount: 52,
missCount: 36,
),
// 100.0%.
"package:front_end/src/fasta/dill/dill_builder_mixins.dart": (
hitCount: 16,
missCount: 0,
),
// 92.34972677595628%.
"package:front_end/src/fasta/dill/dill_class_builder.dart": (
hitCount: 169,
missCount: 14,
),
// 80.72289156626506%.
"package:front_end/src/fasta/dill/dill_extension_builder.dart": (
hitCount: 67,
missCount: 16,
),
// 70.29702970297029%.
"package:front_end/src/fasta/dill/dill_extension_member_builder.dart": (
hitCount: 71,
missCount: 30,
),
// 95.42483660130719%.
"package:front_end/src/fasta/dill/dill_extension_type_declaration_builder.dart":
(
hitCount: 146,
missCount: 7,
),
// 83.76623376623377%.
"package:front_end/src/fasta/dill/dill_extension_type_member_builder.dart": (
hitCount: 129,
missCount: 25,
),
// 78.4256559766764%.
"package:front_end/src/fasta/dill/dill_library_builder.dart": (
hitCount: 269,
missCount: 74,
),
// 76.58536585365854%.
"package:front_end/src/fasta/dill/dill_loader.dart": (
hitCount: 157,
missCount: 48,
),
// 86.52173913043478%.
"package:front_end/src/fasta/dill/dill_member_builder.dart": (
hitCount: 199,
missCount: 31,
),
// 74.35897435897436%.
"package:front_end/src/fasta/dill/dill_target.dart": (
hitCount: 29,
missCount: 10,
),
// 95.83333333333334%.
"package:front_end/src/fasta/dill/dill_type_alias_builder.dart": (
hitCount: 46,
missCount: 2,
),
// 86.66666666666667%.
"package:front_end/src/fasta/export.dart": (
hitCount: 13,
missCount: 2,
),
// 50.0%.
"package:front_end/src/fasta/hybrid_file_system.dart": (
hitCount: 21,
missCount: 21,
),
// 84.78260869565217%.
"package:front_end/src/fasta/identifiers.dart": (
hitCount: 78,
missCount: 14,
),
// 100.0%.
"package:front_end/src/fasta/ignored_parser_errors.dart": (
hitCount: 3,
missCount: 0,
),
// 100.0%.
"package:front_end/src/fasta/import.dart": (
hitCount: 46,
missCount: 0,
),
// 96.96969696969697%.
"package:front_end/src/fasta/import_chains.dart": (
hitCount: 96,
missCount: 3,
),
// 48.225352112676056%.
"package:front_end/src/fasta/incremental_compiler.dart": (
hitCount: 856,
missCount: 919,
),
// 0.0%.
"package:front_end/src/fasta/incremental_serializer.dart": (
hitCount: 0,
missCount: 202,
),
// 100.0%.
"package:front_end/src/fasta/kernel/augmentation_lowering.dart": (
hitCount: 4,
missCount: 0,
),
// 0.0%.
"package:front_end/src/fasta/kernel/benchmarker.dart": (
hitCount: 0,
missCount: 128,
),
// 91.35454423412538%.
"package:front_end/src/fasta/kernel/body_builder.dart": (
hitCount: 6805,
missCount: 644,
),
// 70.40816326530613%.
"package:front_end/src/fasta/kernel/body_builder_context.dart": (
hitCount: 345,
missCount: 145,
),
// 36.44736842105264%.
"package:front_end/src/fasta/kernel/collections.dart": (
hitCount: 277,
missCount: 483,
),
// 91.8854415274463%.
"package:front_end/src/fasta/kernel/combined_member_signature.dart": (
hitCount: 385,
missCount: 34,
),
// 61.68831168831169%.
"package:front_end/src/fasta/kernel/const_conditional_simplifier.dart": (
hitCount: 95,
missCount: 59,
),
// 67.65676567656766%.
"package:front_end/src/fasta/kernel/constant_collection_builders.dart": (
hitCount: 205,
missCount: 98,
),
// 82.14686728048507%.
"package:front_end/src/fasta/kernel/constant_evaluator.dart": (
hitCount: 3658,
missCount: 795,
),
// 92.04545454545455%.
"package:front_end/src/fasta/kernel/constant_int_folder.dart": (
hitCount: 243,
missCount: 21,
),
// 95.11278195488721%.
"package:front_end/src/fasta/kernel/constructor_tearoff_lowering.dart": (
hitCount: 253,
missCount: 13,
),
// 74.57098283931357%.
"package:front_end/src/fasta/kernel/exhaustiveness.dart": (
hitCount: 478,
missCount: 163,
),
// 79.56411876184461%.
"package:front_end/src/fasta/kernel/expression_generator.dart": (
hitCount: 2519,
missCount: 647,
),
// 100.0%.
"package:front_end/src/fasta/kernel/expression_generator_helper.dart": (
hitCount: 36,
missCount: 0,
),
// 90.27777777777779%.
"package:front_end/src/fasta/kernel/forest.dart": (
hitCount: 390,
missCount: 42,
),
// 94.4927536231884%.
"package:front_end/src/fasta/kernel/forwarding_node.dart": (
hitCount: 326,
missCount: 19,
),
// 83.1896551724138%.
"package:front_end/src/fasta/kernel/hierarchy/class_member.dart": (
hitCount: 386,
missCount: 78,
),
// 100.0%.
"package:front_end/src/fasta/kernel/hierarchy/delayed.dart": (
hitCount: 218,
missCount: 0,
),
// 87.52834467120182%.
"package:front_end/src/fasta/kernel/hierarchy/extension_type_members.dart": (
hitCount: 386,
missCount: 55,
),
// 50.77720207253886%.
"package:front_end/src/fasta/kernel/hierarchy/hierarchy_builder.dart": (
hitCount: 98,
missCount: 95,
),
// 93.33333333333333%.
"package:front_end/src/fasta/kernel/hierarchy/hierarchy_node.dart": (
hitCount: 392,
missCount: 28,
),
// 98.51851851851852%.
"package:front_end/src/fasta/kernel/hierarchy/members_builder.dart": (
hitCount: 133,
missCount: 2,
),
// 91.44427001569859%.
"package:front_end/src/fasta/kernel/hierarchy/members_node.dart": (
hitCount: 1165,
missCount: 109,
),
// 61.53846153846154%.
"package:front_end/src/fasta/kernel/hierarchy/mixin_inferrer.dart": (
hitCount: 248,
missCount: 155,
),
// 52.24719101123596%.
"package:front_end/src/fasta/kernel/implicit_field_type.dart": (
hitCount: 93,
missCount: 85,
),
// 2.941176470588235%.
"package:front_end/src/fasta/kernel/implicit_type_argument.dart": (
hitCount: 1,
missCount: 33,
),
// 46.40625%.
"package:front_end/src/fasta/kernel/internal_ast.dart": (
hitCount: 594,
missCount: 686,
),
// 74.13793103448276%.
"package:front_end/src/fasta/kernel/invalid_type.dart": (
hitCount: 43,
missCount: 15,
),
// 55.55555555555556%.
"package:front_end/src/fasta/kernel/kernel_constants.dart": (
hitCount: 10,
missCount: 8,
),
// 98.95833333333334%.
"package:front_end/src/fasta/kernel/kernel_helper.dart": (
hitCount: 285,
missCount: 3,
),
// 79.9079754601227%.
"package:front_end/src/fasta/kernel/kernel_target.dart": (
hitCount: 1042,
missCount: 262,
),
// 61.111111111111114%.
"package:front_end/src/fasta/kernel/kernel_variable_builder.dart": (
hitCount: 11,
missCount: 7,
),
// 100.0%.
"package:front_end/src/fasta/kernel/late_lowering.dart": (
hitCount: 368,
missCount: 0,
),
// 89.58333333333334%.
"package:front_end/src/fasta/kernel/load_library_builder.dart": (
hitCount: 43,
missCount: 5,
),
// 0.1984126984126984%.
"package:front_end/src/fasta/kernel/macro/annotation_parser.dart": (
hitCount: 2,
missCount: 1006,
),
// 0.0%.
"package:front_end/src/fasta/kernel/macro/identifiers.dart": (
hitCount: 0,
missCount: 134,
),
// 0.0%.
"package:front_end/src/fasta/kernel/macro/introspectors.dart": (
hitCount: 0,
missCount: 573,
),
// 0.19047619047619047%.
"package:front_end/src/fasta/kernel/macro/macro.dart": (
hitCount: 2,
missCount: 1048,
),
// 0.0%.
"package:front_end/src/fasta/kernel/macro/offsets.dart": (
hitCount: 0,
missCount: 201,
),
// 0.0%.
"package:front_end/src/fasta/kernel/macro/types.dart": (
hitCount: 0,
missCount: 230,
),
// 89.23611111111111%.
"package:front_end/src/fasta/kernel/member_covariance.dart": (
hitCount: 257,
missCount: 31,
),
// 39.473684210526315%.
"package:front_end/src/fasta/kernel/resource_identifier.dart": (
hitCount: 15,
missCount: 23,
),
// 15.238095238095239%.
"package:front_end/src/fasta/kernel/static_weak_references.dart": (
hitCount: 16,
missCount: 89,
),
// 19.753086419753085%.
"package:front_end/src/fasta/kernel/try_constant_evaluator.dart": (
hitCount: 16,
missCount: 65,
),
// 93.14928425357874%.
"package:front_end/src/fasta/kernel/type_algorithms.dart": (
hitCount: 911,
missCount: 67,
),
// 90.20618556701031%.
"package:front_end/src/fasta/kernel/type_builder_computer.dart": (
hitCount: 175,
missCount: 19,
),
// 37.93103448275862%.
"package:front_end/src/fasta/kernel/utils.dart": (
hitCount: 66,
missCount: 108,
),
// 56.25%.
"package:front_end/src/fasta/kernel/verifier.dart": (
hitCount: 18,
missCount: 14,
),
// 79.3103448275862%.
"package:front_end/src/fasta/library_graph.dart": (
hitCount: 23,
missCount: 6,
),
// 100.0%.
"package:front_end/src/fasta/messages.dart": (
hitCount: 12,
missCount: 0,
),
// 100.0%.
"package:front_end/src/fasta/modifier.dart": (
hitCount: 29,
missCount: 0,
),
// 100.0%.
"package:front_end/src/fasta/operator.dart": (
hitCount: 4,
missCount: 0,
),
// 0.0%.
"package:front_end/src/fasta/problems.dart": (
hitCount: 0,
missCount: 29,
),
// 80.5050505050505%.
"package:front_end/src/fasta/scope.dart": (
hitCount: 797,
missCount: 193,
),
// 80.29556650246306%.
"package:front_end/src/fasta/source/class_declaration.dart": (
hitCount: 163,
missCount: 40,
),
// 92.02898550724638%.
"package:front_end/src/fasta/source/diet_listener.dart": (
hitCount: 635,
missCount: 55,
),
// 100.0%.
"package:front_end/src/fasta/source/diet_parser.dart": (
hitCount: 4,
missCount: 0,
),
// 93.19148936170212%.
"package:front_end/src/fasta/source/name_scheme.dart": (
hitCount: 219,
missCount: 16,
),
// 95.16129032258065%.
"package:front_end/src/fasta/source/offset_map.dart": (
hitCount: 118,
missCount: 6,
),
// 91.45299145299145%.
"package:front_end/src/fasta/source/outline_builder.dart": (
hitCount: 2247,
missCount: 210,
),
// 94.44444444444444%.
"package:front_end/src/fasta/source/redirecting_factory_body.dart": (
hitCount: 34,
missCount: 2,
),
// 88.8268156424581%.
"package:front_end/src/fasta/source/source_builder_mixins.dart": (
hitCount: 159,
missCount: 20,
),
// 85.39007092198581%.
"package:front_end/src/fasta/source/source_class_builder.dart": (
hitCount: 1204,
missCount: 206,
),
// 92.65658747300216%.
"package:front_end/src/fasta/source/source_constructor_builder.dart": (
hitCount: 858,
missCount: 68,
),
// 95.73560767590618%.
"package:front_end/src/fasta/source/source_enum_builder.dart": (
hitCount: 449,
missCount: 20,
),
// 61.261261261261254%.
"package:front_end/src/fasta/source/source_extension_builder.dart": (
hitCount: 68,
missCount: 43,
),
// 84.32539682539682%.
"package:front_end/src/fasta/source/source_extension_type_declaration_builder.dart":
(
hitCount: 425,
missCount: 79,
),
// 92.22222222222223%.
"package:front_end/src/fasta/source/source_factory_builder.dart": (
hitCount: 581,
missCount: 49,
),
// 89.10891089108911%.
"package:front_end/src/fasta/source/source_field_builder.dart": (
hitCount: 1170,
missCount: 143,
),
// 89.29663608562691%.
"package:front_end/src/fasta/source/source_function_builder.dart": (
hitCount: 292,
missCount: 35,
),
// 83.62422997946611%.
"package:front_end/src/fasta/source/source_library_builder.dart": (
hitCount: 3258,
missCount: 638,
),
// 80.1697186243859%.
"package:front_end/src/fasta/source/source_loader.dart": (
hitCount: 1795,
missCount: 444,
),
// 40.32258064516129%.
"package:front_end/src/fasta/source/source_member_builder.dart": (
hitCount: 25,
missCount: 37,
),
// 96.11829944547135%.
"package:front_end/src/fasta/source/source_procedure_builder.dart": (
hitCount: 520,
missCount: 21,
),
// 97.63313609467455%.
"package:front_end/src/fasta/source/source_type_alias_builder.dart": (
hitCount: 330,
missCount: 8,
),
// 78.37837837837837%.
"package:front_end/src/fasta/source/stack_listener_impl.dart": (
hitCount: 29,
missCount: 8,
),
// 73.07692307692307%.
"package:front_end/src/fasta/ticker.dart": (
hitCount: 19,
missCount: 7,
),
// 85.65400843881856%.
"package:front_end/src/fasta/type_inference/closure_context.dart": (
hitCount: 406,
missCount: 68,
),
// 77.55474452554745%.
"package:front_end/src/fasta/type_inference/delayed_expressions.dart": (
hitCount: 425,
missCount: 123,
),
// 97.88732394366197%.
"package:front_end/src/fasta/type_inference/external_ast_helper.dart": (
hitCount: 139,
missCount: 3,
),
// 76.19047619047619%.
"package:front_end/src/fasta/type_inference/factor_type.dart": (
hitCount: 16,
missCount: 5,
),
// 75.47169811320755%.
"package:front_end/src/fasta/type_inference/for_in.dart": (
hitCount: 120,
missCount: 39,
),
// 85.12820512820512%.
"package:front_end/src/fasta/type_inference/inference_results.dart": (
hitCount: 166,
missCount: 29,
),
// 90.25658807212206%.
"package:front_end/src/fasta/type_inference/inference_visitor.dart": (
hitCount: 7809,
missCount: 843,
),
// 84.56303724928367%.
"package:front_end/src/fasta/type_inference/inference_visitor_base.dart": (
hitCount: 2361,
missCount: 431,
),
// 80.26509572901325%.
"package:front_end/src/fasta/type_inference/matching_cache.dart": (
hitCount: 545,
missCount: 134,
),
// 98.10964083175804%.
"package:front_end/src/fasta/type_inference/matching_expressions.dart": (
hitCount: 519,
missCount: 10,
),
// 77.31629392971246%.
"package:front_end/src/fasta/type_inference/object_access_target.dart": (
hitCount: 484,
missCount: 142,
),
// 98.0%.
"package:front_end/src/fasta/type_inference/shared_type_analyzer.dart": (
hitCount: 98,
missCount: 2,
),
// 71.42857142857143%.
"package:front_end/src/fasta/type_inference/standard_bounds.dart": (
hitCount: 20,
missCount: 8,
),
// 61.28608923884514%.
"package:front_end/src/fasta/type_inference/type_constraint_gatherer.dart": (
hitCount: 467,
missCount: 295,
),
// 95.0%.
"package:front_end/src/fasta/type_inference/type_demotion.dart": (
hitCount: 19,
missCount: 1,
),
// 89.62962962962962%.
"package:front_end/src/fasta/type_inference/type_inference_engine.dart": (
hitCount: 484,
missCount: 56,
),
// 54.037267080745345%.
"package:front_end/src/fasta/type_inference/type_inferrer.dart": (
hitCount: 87,
missCount: 74,
),
// 36.666666666666664%.
"package:front_end/src/fasta/type_inference/type_schema.dart": (
hitCount: 11,
missCount: 19,
),
// 88.88888888888889%.
"package:front_end/src/fasta/type_inference/type_schema_elimination.dart": (
hitCount: 32,
missCount: 4,
),
// 89.06882591093117%.
"package:front_end/src/fasta/type_inference/type_schema_environment.dart": (
hitCount: 220,
missCount: 27,
),
// 100.0%.
"package:front_end/src/fasta/uri_offset.dart": (
hitCount: 1,
missCount: 0,
),
// 75.92592592592592%.
"package:front_end/src/fasta/uri_translator.dart": (
hitCount: 41,
missCount: 13,
),
// 100.0%.
"package:front_end/src/fasta/uris.dart": (
hitCount: 4,
missCount: 0,
),
// 0.0%.
"package:front_end/src/fasta/util/error_reporter_file_copier.dart": (
hitCount: 0,
missCount: 11,
),
// 85.71428571428571%.
"package:front_end/src/fasta/util/experiment_environment_getter.dart": (
hitCount: 6,
missCount: 1,
),
// 52.63157894736842%.
"package:front_end/src/fasta/util/helpers.dart": (
hitCount: 20,
missCount: 18,
),
// 5.5954088952654235%.
"package:front_end/src/fasta/util/parser_ast.dart": (
hitCount: 78,
missCount: 1316,
),
// 20.424013434089%.
"package:front_end/src/fasta/util/parser_ast_helper.dart": (
hitCount: 973,
missCount: 3791,
),
// 86.54205607476636%.
"package:front_end/src/fasta/util/textual_outline.dart": (
hitCount: 463,
missCount: 72,
),
// 28.79581151832461%.
"package:front_end/src/kernel_generator_impl.dart": (
hitCount: 55,
missCount: 136,
),
// 0.0%.
"package:front_end/src/macros/isolate_macro_serializer.dart": (
hitCount: 0,
missCount: 15,
),
// 0.0%.
"package:front_end/src/macros/macro_serializer.dart": (
hitCount: 0,
missCount: 4,
),
// 0.0%.
"package:front_end/src/macros/macro_target.dart": (
hitCount: 0,
missCount: 3,
),
// 0.0%.
"package:front_end/src/macros/macro_target_io.dart": (
hitCount: 0,
missCount: 42,
),
// 0.0%.
"package:front_end/src/macros/temp_dir_macro_serializer.dart": (
hitCount: 0,
missCount: 18,
),
};