]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/test/test-replace-var.c
tree-wide: drop 'This file is part of systemd' blurb
[thirdparty/systemd.git] / src / test / test-replace-var.c
CommitLineData
53e1b683 1/* SPDX-License-Identifier: LGPL-2.1+ */
6e6fb527 2/***
6e6fb527 3 Copyright 2012 Lennart Poettering
6e6fb527
LP
4***/
5
6#include <string.h>
7
6e6fb527
LP
8#include "macro.h"
9#include "replace-var.h"
07630cea
LP
10#include "string-util.h"
11#include "util.h"
6e6fb527
LP
12
13static char *lookup(const char *variable, void *userdata) {
605405c6 14 return strjoin("<<<", variable, ">>>");
6e6fb527
LP
15}
16
17int main(int argc, char *argv[]) {
18 char *r;
19
20 assert_se(r = replace_var("@@@foobar@xyz@HALLO@foobar@test@@testtest@TEST@...@@@", lookup, NULL));
21 puts(r);
22 assert_se(streq(r, "@@@foobar@xyz<<<HALLO>>>foobar@test@@testtest<<<TEST>>>...@@@"));
23 free(r);
24
25 assert_se(r = strreplace("XYZFFFFXYZFFFFXYZ", "XYZ", "ABC"));
26 puts(r);
27 assert_se(streq(r, "ABCFFFFABCFFFFABC"));
28 free(r);
29
30 return 0;
31}