handleCommand function

Future<void> handleCommand(
  1. List<String> arguments, {
  2. bool verbose = false,
})

Handles the 'run' command by dispatching to the appropriate subcommand.

Implementation

Future<void> handleCommand(
  List<String> arguments, {
  bool verbose = false,
}) async {
  final runParser = buildParser();

  try {
    final results = runParser.parse(arguments);

    if (results.flag('help') || results.command == null) {
      printUsage(runParser);
      return;
    }

    switch (results.command!.name) {
      case 'flutter-test-coverage-workaround':
        await workaround.handleCommand(
          results.command!.arguments,
          verbose: verbose,
        );
      default:
        stderr.writeln(
          'Error: Unknown run subcommand "${results.command!.name}"',
        );
        printUsage(runParser);
        exit(1);
    }
  } on FormatException catch (e) {
    stderr.writeln('Error: ${e.message}');
    print('');
    printUsage(runParser);
    exit(1);
  }
}