diff --git a/bin/cmdtest.rb b/bin/cmdtest.rb index 8e373fe..54612a0 100755 --- a/bin/cmdtest.rb +++ b/bin/cmdtest.rb @@ -572,6 +572,7 @@ module Cmdtest def _parse_options pr = @argument_parser = ArgumentParser.new("cmdtest") + pr.add("-h", "--help", "show this help message and exit") pr.add("", "--version", "show version") pr.add("-q", "--quiet", "be more quiet") pr.add("-v", "--verbose", "be more verbose") @@ -585,7 +586,13 @@ module Cmdtest pr.add("-i", "--incremental", "incremental mode") pr.add("", "--slave", "run in slave mode", type: String) pr.addpos("arg", "testfile or pattern", nargs: 0..999) - return pr.parse_args(ARGV, patterns: [], ruby_s: Util.windows?) + + opts = pr.parse_args(ARGV, patterns: [], ruby_s: Util.windows?) + if opts.help + pr.print_usage() + exit(0) + end + return opts end def run diff --git a/lib/cmdtest/argumentparser.rb b/lib/cmdtest/argumentparser.rb index 3ee0ae9..1cf237a 100644 --- a/lib/cmdtest/argumentparser.rb +++ b/lib/cmdtest/argumentparser.rb @@ -133,8 +133,6 @@ module Cmdtest @help = false @args = [] - - add("-h", "--help", "show this help message and exit") end def add(sname, name, help, args = {}) @@ -206,11 +204,6 @@ module Cmdtest @optind = 0 while _more_args() && _arg() =~ /^-./ - if _arg() == "-h" - print_usage() - exit(0) - end - if _arg() == "--" @optind += 1 break