diff --git a/src/ukify/test/test_ukify.py b/src/ukify/test/test_ukify.py index 3cc3492fe0..9a07f3397c 100755 --- a/src/ukify/test/test_ukify.py +++ b/src/ukify/test/test_ukify.py @@ -144,6 +144,11 @@ def test_apply_config(tmp_path): assert ns.phase_path_groups == [['enter-initrd:leave-initrd:sysinit:ready:shutdown:final']] def test_parse_args_minimal(): + try: + ukify.parse_args([]) + except ValueError as e: + print(f'expected failure: {e}') + opts = ukify.parse_args('arg1 arg2'.split()) assert opts.linux == pathlib.Path('arg1') assert opts.initrd == [pathlib.Path('arg2')] diff --git a/src/ukify/ukify.py b/src/ukify/ukify.py index a6a4a38040..49317fbf78 100755 --- a/src/ukify/ukify.py +++ b/src/ukify/ukify.py @@ -1484,7 +1484,7 @@ def finalize_options(opts): # Figure out which syntax is being used, one of: # ukify verb --arg --arg --arg # ukify linux initrd… - if opts.positional[0] == 'inspect': + if len(opts.positional) >= 1 and opts.positional[0] == 'inspect': opts.verb = opts.positional[0] opts.files = opts.positional[1:] if not opts.files: