=== modified file 'mandos-ctl' --- mandos-ctl 2019-03-07 20:37:15 +0000 +++ mandos-ctl 2019-03-07 20:57:16 +0000 @@ -644,12 +644,7 @@ return commands -def main(): - parser = argparse.ArgumentParser() - - add_command_line_options(parser) - - options = parser.parse_args() +def check_option_syntax(parser, options): def has_actions(options): return any((options.enable, @@ -683,6 +678,16 @@ if options.is_enabled and len(options.client) > 1: parser.error("--is-enabled requires exactly one client") + +def main(): + parser = argparse.ArgumentParser() + + add_command_line_options(parser) + + options = parser.parse_args() + + check_option_syntax(parser, options) + clientnames = options.client try: @@ -1155,6 +1160,7 @@ """Assert that parsing ARGS should result in an instance of COMMAND_CLS with (optionally) all supplied attributes (CMD_ATTRS).""" options = self.parser.parse_args(args) + check_option_syntax(self.parser, options) commands = commands_from_options(options) self.assertEqual(len(commands), 1) command = commands[0]