diff options
Diffstat (limited to 'tests/tests.c')
| -rw-r--r-- | tests/tests.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/tests.c b/tests/tests.c index 1f45ea8..6a7b4b7 100644 --- a/tests/tests.c +++ b/tests/tests.c @@ -197,6 +197,24 @@ TEST_CASE(positional_value_same_as_flag) { return 0; } +TEST_CASE(two_positional_second_required) { + const char* first = NULL; + const char* second = NULL; + ls_args args; + char* argv[] = { "./hello", NULL }; + int argc = sizeof(argv) / sizeof(*argv) - 1; + + ls_args_init(&args); + ls_args_pos_string(&args, &first, "first", 0); + ls_args_pos_string(&args, &second, "second", LS_ARGS_REQUIRED); + + ASSERT(!ls_args_parse(&args, argc, argv)); + ASSERT_STR_EQ(args.last_error, "Required argument 'second' not provided"); + + ls_args_free(&args); + return 0; +} + TEST_CASE(basic_args_positional_required) { const char* first; ls_args args; |
