summaryrefslogtreecommitdiff
path: root/src/test/test-set.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2020-12-11 08:34:13 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2020-12-14 14:04:53 +0900
commit8d80f275303385eb9e2452f97f9c11be5c196862 (patch)
treebea32045f40beec4b6fabe99b090dab6cbe9aad2 /src/test/test-set.c
parentba9385d91f4724dd55a655da153f3a89e7943b4e (diff)
downloadsystemd-8d80f275303385eb9e2452f97f9c11be5c196862.tar.gz
sd-device: make TAGS= property prefixed and suffixed with ":"
The commit 6f3ac0d51766b0b9101676cefe5c4ba81feba436 drops the prefix and suffix in TAGS= property. But there exists several rules that have like `TAGS=="*:tag:*"`. So, the property must be always prefixed and suffixed with ":". Fixes #17930.
Diffstat (limited to 'src/test/test-set.c')
-rw-r--r--src/test/test-set.c67
1 files changed, 47 insertions, 20 deletions
diff --git a/src/test/test-set.c b/src/test/test-set.c
index 8979408242..b4d07b2078 100644
--- a/src/test/test-set.c
+++ b/src/test/test-set.c
@@ -154,50 +154,77 @@ static void test_set_strjoin(void) {
_cleanup_set_free_ Set *m = NULL;
_cleanup_free_ char *joined = NULL;
- assert_se(set_strjoin(m, NULL, &joined) >= 0);
+ /* Empty set */
+ assert_se(set_strjoin(m, NULL, false, &joined) >= 0);
assert_se(!joined);
- assert_se(set_strjoin(m, "", &joined) >= 0);
+ assert_se(set_strjoin(m, "", false, &joined) >= 0);
assert_se(!joined);
- assert_se(set_strjoin(m, " ", &joined) >= 0);
+ assert_se(set_strjoin(m, " ", false, &joined) >= 0);
assert_se(!joined);
- assert_se(set_strjoin(m, "xxx", &joined) >= 0);
+ assert_se(set_strjoin(m, "xxx", false, &joined) >= 0);
+ assert_se(!joined);
+ assert_se(set_strjoin(m, NULL, true, &joined) >= 0);
+ assert_se(!joined);
+ assert_se(set_strjoin(m, "", true, &joined) >= 0);
+ assert_se(!joined);
+ assert_se(set_strjoin(m, " ", true, &joined) >= 0);
+ assert_se(!joined);
+ assert_se(set_strjoin(m, "xxx", true, &joined) >= 0);
assert_se(!joined);
+ /* Single entry */
assert_se(set_put_strdup(&m, "aaa") == 1);
-
- assert_se(set_strjoin(m, NULL, &joined) >= 0);
+ assert_se(set_strjoin(m, NULL, false, &joined) >= 0);
assert_se(streq(joined, "aaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, "", &joined) >= 0);
+ assert_se(set_strjoin(m, "", false, &joined) >= 0);
assert_se(streq(joined, "aaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, " ", &joined) >= 0);
+ assert_se(set_strjoin(m, " ", false, &joined) >= 0);
+ assert_se(streq(joined, "aaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, "xxx", false, &joined) >= 0);
+ assert_se(streq(joined, "aaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, NULL, true, &joined) >= 0);
assert_se(streq(joined, "aaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, "xxx", &joined) >= 0);
+ assert_se(set_strjoin(m, "", true, &joined) >= 0);
assert_se(streq(joined, "aaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, " ", true, &joined) >= 0);
+ assert_se(streq(joined, " aaa "));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, "xxx", true, &joined) >= 0);
+ assert_se(streq(joined, "xxxaaaxxx"));
+ /* Two entries */
assert_se(set_put_strdup(&m, "bbb") == 1);
assert_se(set_put_strdup(&m, "aaa") == 0);
-
joined = mfree(joined);
- assert_se(set_strjoin(m, NULL, &joined) >= 0);
+ assert_se(set_strjoin(m, NULL, false, &joined) >= 0);
assert_se(STR_IN_SET(joined, "aaabbb", "bbbaaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, "", &joined) >= 0);
+ assert_se(set_strjoin(m, "", false, &joined) >= 0);
assert_se(STR_IN_SET(joined, "aaabbb", "bbbaaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, " ", &joined) >= 0);
+ assert_se(set_strjoin(m, " ", false, &joined) >= 0);
assert_se(STR_IN_SET(joined, "aaa bbb", "bbb aaa"));
-
joined = mfree(joined);
- assert_se(set_strjoin(m, "xxx", &joined) >= 0);
+ assert_se(set_strjoin(m, "xxx", false, &joined) >= 0);
assert_se(STR_IN_SET(joined, "aaaxxxbbb", "bbbxxxaaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, NULL, true, &joined) >= 0);
+ assert_se(STR_IN_SET(joined, "aaabbb", "bbbaaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, "", true, &joined) >= 0);
+ assert_se(STR_IN_SET(joined, "aaabbb", "bbbaaa"));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, " ", true, &joined) >= 0);
+ assert_se(STR_IN_SET(joined, " aaa bbb ", " bbb aaa "));
+ joined = mfree(joined);
+ assert_se(set_strjoin(m, "xxx", true, &joined) >= 0);
+ assert_se(STR_IN_SET(joined, "xxxaaaxxxbbbxxx", "xxxbbbxxxaaaxxx"));
}
int main(int argc, const char *argv[]) {