handleCommand function
Handles the 'flutter-test-coverage-workaround' subcommand execution.
Implementation
Future<void> handleCommand(
List<String> arguments, {
bool verbose = false,
}) async {
final parser = buildParser();
try {
var results = parser.parse(arguments);
if (results.flag('help')) {
printUsage(parser);
return;
}
// Resolve preset if specified
final preset = resolvePreset(
results: results,
arguments: arguments,
parser: parser,
commandPath: ['run', 'flutter-test-coverage-workaround'],
);
results = preset.results;
if (verbose) {
print(
'[VERBOSE] flutter-test-coverage-workaround arguments: $arguments',
);
if (preset.resolvedArguments != null) {
print(
'[VERBOSE] flutter-test-coverage-workaround resolved arguments: '
'${preset.resolvedArguments}',
);
}
}
final includePatterns = results.multiOption('include');
final excludePatterns = results.multiOption('exclude');
final config = FlutterTestCoverageWorkaroundConfig(
includePatterns: includePatterns,
excludePatterns: excludePatterns,
target: results.option('target')!,
);
await runFlutterTestCoverageWorkaround(config);
} on FormatException catch (e) {
stderr.writeln('Error: ${e.message}');
print('');
printUsage(parser);
exit(1);
}
}