$ tool/test-bin/pub_command_runner.dart 
[E] Could not find a command named "".
[E] 
[E] Usage: pub_command_runner <command> [arguments]
[E] 
[E] Global options:
[E] -h, --help    Print this usage information.
[E] 
[E] Available commands:
[E]   pub   Work with packages.
[E] 
[E] Run "pub_command_runner help <command>" for more information about a command.

$ tool/test-bin/pub_command_runner.dart --help
Tests the embeddable pub command.

Usage: pub_command_runner <command> [arguments]

Global options:
-h, --help    Print this usage information.

Available commands:
  pub   Work with packages.

Run "pub_command_runner help <command>" for more information about a command.

$ tool/test-bin/pub_command_runner.dart pub
[E] Missing subcommand for "pub_command_runner pub".
[E] 
[E] Usage: pub_command_runner pub [arguments...]
[E] -h, --help          Print this usage information.
[E]     --[no-]trace    Print debugging information when an error occurs.
[E] -v, --verbose       Shortcut for "--verbosity=all".
[E] 
[E] Available subcommands:
[E]   add         Add a dependency to pubspec.yaml.
[E]   cache       Work with the system cache.
[E]   deps        Print package dependencies.
[E]   downgrade   Downgrade the current package's dependencies to oldest versions.
[E]   get         Get the current package's dependencies.
[E]   global      Work with global packages.
[E]   logout      Log out of pub.dartlang.org.
[E]   outdated    Analyze your dependencies to find which ones can be upgraded.
[E]   publish     Publish the current package to pub.dartlang.org.
[E]   remove      Removes a dependency from the current package.
[E]   upgrade     Upgrade the current package's dependencies to latest versions.
[E]   uploader    Manage uploaders for a package on pub.dartlang.org.
[E] 
[E] Run "pub_command_runner help" to see global options.
[E] See https://dart.dev/tools/pub/cmd/pub-global for detailed documentation.

$ tool/test-bin/pub_command_runner.dart pub --help
Work with packages.

Usage: pub_command_runner pub [arguments...]
-h, --help          Print this usage information.
    --[no-]trace    Print debugging information when an error occurs.
-v, --verbose       Shortcut for "--verbosity=all".

Available subcommands:
  add         Add a dependency to pubspec.yaml.
  cache       Work with the system cache.
  deps        Print package dependencies.
  downgrade   Downgrade the current package's dependencies to oldest versions.
  get         Get the current package's dependencies.
  global      Work with global packages.
  logout      Log out of pub.dartlang.org.
  outdated    Analyze your dependencies to find which ones can be upgraded.
  publish     Publish the current package to pub.dartlang.org.
  remove      Removes a dependency from the current package.
  upgrade     Upgrade the current package's dependencies to latest versions.
  uploader    Manage uploaders for a package on pub.dartlang.org.

Run "pub_command_runner help" to see global options.
See https://dart.dev/tools/pub/cmd/pub-global for detailed documentation.

$ tool/test-bin/pub_command_runner.dart pub get --help
Get the current package's dependencies.

Usage: pub_command_runner pub get <subcommand> [arguments...]
-h, --help               Print this usage information.
    --[no-]offline       Use cached packages instead of accessing the network.
-n, --dry-run            Report what dependencies would change but don't change
                         any.
    --[no-]precompile    Precompile executables in immediate dependencies.

Run "pub_command_runner help" to see global options.
See https://dart.dev/tools/pub/cmd/pub-get for detailed documentation.

$ tool/test-bin/pub_command_runner.dart pub global
[E] Missing subcommand for "pub_command_runner pub global".
[E] 
[E] Usage: pub_command_runner pub global [arguments...]
[E] -h, --help    Print this usage information.
[E] 
[E] Available subcommands:
[E]   activate     Make a package's executables globally available.
[E]   deactivate   Remove a previously activated package.
[E]   list         List globally activated packages.
[E]   run          Run an executable from a globally activated package.
[E] 
[E] Run "pub_command_runner help" to see global options.
[E] See https://dart.dev/tools/pub/cmd/pub-global for detailed documentation.

