X-Git-Url: http://git.openafs.org/?p=openafs.git;a=blobdiff_plain;f=tests%2Fcmd%2Fcommand-t.c;h=a4248c23dfcefad16485b6ab8553da107c8f4d96;hp=846a8543ddbb15219bbe0bb2f0790ff29fbe4665;hb=9376f75beca80af69c5437de4023c32646e702b8;hpb=64b255327dc6c2456ba4d4e28651b07819710a60 diff --git a/tests/cmd/command-t.c b/tests/cmd/command-t.c index 846a854..a4248c2 100644 --- a/tests/cmd/command-t.c +++ b/tests/cmd/command-t.c @@ -38,6 +38,7 @@ #define FLAG_OFF 0 #define FIRST_OFF 1 #define SECOND_OFF 2 +#define SUGAR_OFF 3 #define FOURTH_OFF 4 #define FIFTH_OFF 5 #define PERHAPS_OFF 6 @@ -67,7 +68,7 @@ main(int argc, char **argv) int retval; char *retstring = NULL; - plan(79); + plan(85); initialize_CMD_error_table(); @@ -154,6 +155,19 @@ main(int argc, char **argv) is_int(CMD_UNKNOWNSWITCH, code, "and fail with cmd_Parse too"); cmd_FreeArgv(tv); + /* Check that paramaters with abbreviation disabled don't make things + * ambiguous */ + cmd_AddParmAtOffset(opts, SUGAR_OFF, "-sugar", CMD_SINGLE, CMD_OPTIONAL | CMD_NOABBRV, + "sugar with that"); + code = cmd_ParseLine("-fi foo -s bar -flag", tv, &tc, 100); + is_int(0, code, "cmd_ParseLine succeeds"); + code = cmd_Dispatch(tc, tv); + is_int(0, code, "disabling specific abbreviations succeeds"); + code = cmd_Parse(tc, tv, &retopts); + is_int(0, code, "and works with cmd_Parse into the bargain"); + cmd_FreeOptions(&retopts); + cmd_FreeArgv(tv); + /* Disable positional commands */ cmd_DisablePositionalCommands(); code = cmd_ParseLine("foo bar -flag", tv, &tc, 100);