Skip to content

Commit f59551f

Browse files
committed
test: add test cases for EXTRACT_KEEP_QUOTE and EXTRACT_UNQUOTE
1 parent 1104d11 commit f59551f

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

src/test/test-extract-word.c

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,46 @@ static void test_extract_first_word(void) {
442442
assert_se(extract_first_word(&p, &t, "=\", ", 0) > 0);
443443
assert_se(streq(t, "baldo"));
444444
free(t);
445+
446+
p = original = "mode=\"1777\",size=\"10%\",nr_inodes=\"400\"k,uid=\"496,,107\"520,gi\"\"'d=49610,'\"\"7520,context=\"system_u:object_r:svirt_sandbox_file_t:s0:c0,c1\"";
447+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
448+
assert_se(streq(t, "mode=\"1777\""));
449+
free(t);
450+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
451+
assert_se(streq(t, "size=\"10%\""));
452+
free(t);
453+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
454+
assert_se(streq(t, "nr_inodes=\"400\"k"));
455+
free(t);
456+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
457+
assert_se(streq(t, "uid=\"496,,107\"520"));
458+
free(t);
459+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
460+
assert_se(streq(t, "gi\"\"'d=49610,'\"\"7520"));
461+
free(t);
462+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_KEEP_QUOTE) > 0);
463+
assert_se(streq(t, "context=\"system_u:object_r:svirt_sandbox_file_t:s0:c0,c1\""));
464+
free(t);
465+
466+
p = original = "mode=\"1777\",size=\"10%\",nr_inodes=\"400\"k,uid=\"496,,107\"520,gi\"\"'d=49610,'\"\"7520,context=\"system_u:object_r:svirt_sandbox_file_t:s0:c0,c1\"";
467+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
468+
assert_se(streq(t, "mode=1777"));
469+
free(t);
470+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
471+
assert_se(streq(t, "size=10%"));
472+
free(t);
473+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
474+
assert_se(streq(t, "nr_inodes=400k"));
475+
free(t);
476+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
477+
assert_se(streq(t, "uid=496,,107520"));
478+
free(t);
479+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
480+
assert_se(streq(t, "gid=49610,7520"));
481+
free(t);
482+
assert_se(extract_first_word(&p, &t, ",", EXTRACT_UNQUOTE) > 0);
483+
assert_se(streq(t, "context=system_u:object_r:svirt_sandbox_file_t:s0:c0,c1"));
484+
free(t);
445485
}
446486

447487
static void test_extract_first_word_and_warn(void) {

0 commit comments

Comments
 (0)