- Add VariableSpec class with magnitude field validation - Add Formula class supporting multiple input/output variables - Support d4rt_code as string or object with code field - Add comprehensive tests for parsing and serialization - Fix broken test import in pruebas_d4rt_test.dart Follows README.md format requirements exactly
49 lines
1.7 KiB
Dart
49 lines
1.7 KiB
Dart
// Copyright (c) 2020, 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';
|
|
|
|
import 'package:analyzer/dart/analysis/analysis_context_collection.dart';
|
|
import 'package:analyzer/dart/analysis/results.dart';
|
|
import 'package:analyzer/error/error.dart';
|
|
import 'package:analyzer/file_system/physical_file_system.dart';
|
|
|
|
/// A simple example of using the AnalysisContextCollection API.
|
|
void main(List<String> args) async {
|
|
FileSystemEntity entity = Directory.current;
|
|
if (args.isNotEmpty) {
|
|
String arg = args.first;
|
|
entity = FileSystemEntity.isDirectorySync(arg) ? Directory(arg) : File(arg);
|
|
}
|
|
|
|
var issueCount = 0;
|
|
var collection = AnalysisContextCollection(
|
|
includedPaths: [entity.absolute.path],
|
|
resourceProvider: PhysicalResourceProvider.INSTANCE);
|
|
|
|
// Often one context is returned, but depending on the project structure we
|
|
// can see multiple contexts.
|
|
for (var context in collection.contexts) {
|
|
print('Analyzing ${context.contextRoot.root.path} ...');
|
|
|
|
for (var filePath in context.contextRoot.analyzedFiles()) {
|
|
if (!filePath.endsWith('.dart')) {
|
|
continue;
|
|
}
|
|
|
|
var errorsResult = await context.currentSession.getErrors(filePath);
|
|
if (errorsResult is ErrorsResult) {
|
|
for (var error in errorsResult.errors) {
|
|
if (error.errorCode.type != ErrorType.TODO) {
|
|
print(
|
|
' \u001b[1m${error.source.shortName}\u001b[0m ${error.message}');
|
|
issueCount++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
print('$issueCount issues found.');
|
|
}
|