blob: 9c624d70a5d582b078a86cb5a37aa6db6cf8549d [file] [log] [blame]
// Copyright (c) 2025, 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 'dart:io' show Directory, File, FileSystemEntity;
import '../../test/utils/io_utils.dart' show computeRepoDirUri;
import 'compile_helper.dart';
import 'stacktrace_utils.dart';
final Uri repoDir = computeRepoDirUri();
Future<void> main(List<String> args) async {
Directory d = new Directory(args.single);
Helper helper = new Helper();
await helper.setup();
int good = 0;
int bad = 0;
for (FileSystemEntity file in d.listSync(recursive: false)) {
if (file is! File) continue;
(Object, StackTrace)? result = await helper.compile(
file.readAsStringSync(),
);
String filename = file.uri.pathSegments.last;
if (result == null) {
print("${filename}: OK");
good++;
} else {
print("${filename}: Still crashes: ${categorize(result.$2)}");
bad++;
}
}
print("Done. $good good, $bad bad.");
}