mirror of
https://github.com/tailix/libkernaux.git
synced 2025-03-31 17:25:22 -04:00
Add real tests for command line parser
This commit is contained in:
parent
0830f09a80
commit
48a88f1abf
1 changed files with 63 additions and 1 deletions
|
@ -13,6 +13,8 @@ int main()
|
|||
char *argv[ARGV_COUNT_MAX];
|
||||
char buffer[ARGV_COUNT_MAX * ARG_SIZE_MAX];
|
||||
|
||||
//==========================================================================
|
||||
|
||||
assert(kernaux_cmdline_parse(
|
||||
"",
|
||||
error_msg,
|
||||
|
@ -26,7 +28,67 @@ int main()
|
|||
assert(strcmp(error_msg, "") == 0);
|
||||
assert(argc == 0);
|
||||
|
||||
for (unsigned int index = 0; index < ARGV_COUNT_MAX; ++index) {
|
||||
for (unsigned int index = argc; index < ARGV_COUNT_MAX; ++index) {
|
||||
assert(argv[index] == KERNAUX_NULL);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
||||
assert(kernaux_cmdline_parse(
|
||||
" ",
|
||||
error_msg,
|
||||
&argc,
|
||||
argv,
|
||||
buffer,
|
||||
ARGV_COUNT_MAX,
|
||||
ARG_SIZE_MAX
|
||||
));
|
||||
|
||||
assert(strcmp(error_msg, "") == 0);
|
||||
assert(argc == 0);
|
||||
|
||||
for (unsigned int index = argc; index < ARGV_COUNT_MAX; ++index) {
|
||||
assert(argv[index] == KERNAUX_NULL);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
||||
assert(kernaux_cmdline_parse(
|
||||
"foo",
|
||||
error_msg,
|
||||
&argc,
|
||||
argv,
|
||||
buffer,
|
||||
ARGV_COUNT_MAX,
|
||||
ARG_SIZE_MAX
|
||||
));
|
||||
|
||||
assert(strcmp(error_msg, "") == 0);
|
||||
assert(argc == 1);
|
||||
assert(strcmp(argv[0], "foo") == 0);
|
||||
|
||||
for (unsigned int index = argc; index < ARGV_COUNT_MAX; ++index) {
|
||||
assert(argv[index] == KERNAUX_NULL);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
||||
assert(kernaux_cmdline_parse(
|
||||
"foo bar",
|
||||
error_msg,
|
||||
&argc,
|
||||
argv,
|
||||
buffer,
|
||||
ARGV_COUNT_MAX,
|
||||
ARG_SIZE_MAX
|
||||
));
|
||||
|
||||
assert(strcmp(error_msg, "") == 0);
|
||||
assert(argc == 2);
|
||||
assert(strcmp(argv[0], "foo") == 0);
|
||||
assert(strcmp(argv[1], "bar") == 0);
|
||||
|
||||
for (unsigned int index = argc; index < ARGV_COUNT_MAX; ++index) {
|
||||
assert(argv[index] == KERNAUX_NULL);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue