Return 1 if command doesn't exist or wic is called without any commmand. Return result of invoke_command as wic return code.
Added tests for unsupported command and no command. Fixed typo in test case test02_createhelp spotted by this fix. [YOCTO #7856] Signed-off-by: Ed Bartosh <ed.bart...@linux.intel.com> --- meta/lib/oeqa/selftest/wic.py | 11 ++++++++++- scripts/lib/image/help.py | 2 ++ scripts/wic | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/meta/lib/oeqa/selftest/wic.py b/meta/lib/oeqa/selftest/wic.py index 0e3f1f6..ca8fe99 100644 --- a/meta/lib/oeqa/selftest/wic.py +++ b/meta/lib/oeqa/selftest/wic.py @@ -52,7 +52,7 @@ class Wic(oeSelfTest): def test02_createhelp(self): """Test wic create --help""" - self.assertEqual(0, runCmd('wic creat --help').status) + self.assertEqual(0, runCmd('wic create --help').status) def test03_listhelp(self): """Test wic list --help""" @@ -82,3 +82,12 @@ class Wic(oeSelfTest): self.assertEqual(0, runCmd("wic create directdisk-gpt " "--image-name core-image-minimal").status) self.assertEqual(1, len(glob(self.resultdir + "directdisk-*.direct"))) + + def test07_unsupported_subcommand(self): + """Test unsupported subcommand""" + self.assertEqual(1, runCmd('wic unsupported', + ignore_status=True).status) + + def test08_no_command(self): + """Test wic without command""" + self.assertEqual(1, runCmd('wic', ignore_status=True).status) diff --git a/scripts/lib/image/help.py b/scripts/lib/image/help.py index adfe976..a546c7c 100644 --- a/scripts/lib/image/help.py +++ b/scripts/lib/image/help.py @@ -63,11 +63,13 @@ def invoke_subcommand(args, parser, main_command_usage, subcommands): if not args: logging.error("No subcommand specified, exiting") parser.print_help() + return 1 elif args[0] == "help": wic_help(args, main_command_usage, subcommands) elif args[0] not in subcommands: logging.error("Unsupported subcommand %s, exiting\n" % (args[0])) parser.print_help() + return 1 else: usage = subcommands.get(args[0], subcommand_error)[1] subcommands.get(args[0], subcommand_error)[0](args[1:], usage) diff --git a/scripts/wic b/scripts/wic index cf96859..d48e45d 100755 --- a/scripts/wic +++ b/scripts/wic @@ -305,7 +305,7 @@ def main(argv): parser.print_help() sys.exit(1) - hlp.invoke_subcommand(args, parser, hlp.wic_help_usage, subcommands) + return hlp.invoke_subcommand(args, parser, hlp.wic_help_usage, subcommands) if __name__ == "__main__": -- 2.1.4 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core