chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: add macro for iterating through all prefixes of a path
[elogind.git]
/
src
/
test
/
test-unit-file.c
diff --git
a/src/test/test-unit-file.c
b/src/test/test-unit-file.c
index 1bf11e66a5515a5011b96e633fd749c849a31e1d..0413ae211746cee293a18709e37ebd0b28265e1f 100644
(file)
--- a/
src/test/test-unit-file.c
+++ b/
src/test/test-unit-file.c
@@
-35,8
+35,9
@@
#include "load-fragment.h"
#include "strv.h"
#include "fileio.h"
#include "load-fragment.h"
#include "strv.h"
#include "fileio.h"
+#include "test-helper.h"
-static
void
test_unit_file_get_set(void) {
+static
int
test_unit_file_get_set(void) {
int r;
Hashmap *h;
Iterator i;
int r;
Hashmap *h;
Iterator i;
@@
-46,13
+47,17
@@
static void test_unit_file_get_set(void) {
assert(h);
r = unit_file_get_list(UNIT_FILE_SYSTEM, NULL, h);
assert(h);
r = unit_file_get_list(UNIT_FILE_SYSTEM, NULL, h);
- log_info("unit_file_get_list: %s", strerror(-r));
- assert(r >= 0);
+ log_full(r == 0 ? LOG_INFO : LOG_ERR,
+ "unit_file_get_list: %s", strerror(-r));
+ if (r < 0)
+ return EXIT_FAILURE;
HASHMAP_FOREACH(p, h, i)
printf("%s = %s\n", p->path, unit_file_state_to_string(p->state));
unit_file_list_free(h);
HASHMAP_FOREACH(p, h, i)
printf("%s = %s\n", p->path, unit_file_state_to_string(p->state));
unit_file_list_free(h);
+
+ return 0;
}
static void check_execcommand(ExecCommand *c,
}
static void check_execcommand(ExecCommand *c,
@@
-85,13
+90,13
@@
static void test_config_parse_exec(void) {
ExecCommand *c = NULL, *c1;
/* basic test */
ExecCommand *c = NULL, *c1;
/* basic test */
- r = config_parse_exec("fake", 1, "section",
+ r = config_parse_exec(
NULL,
"fake", 1, "section",
"LValue", 0, "/RValue r1",
&c, NULL);
assert_se(r >= 0);
check_execcommand(c, "/RValue", "/RValue", "r1", false);
"LValue", 0, "/RValue r1",
&c, NULL);
assert_se(r >= 0);
check_execcommand(c, "/RValue", "/RValue", "r1", false);
- r = config_parse_exec("fake", 2, "section",
+ r = config_parse_exec(
NULL,
"fake", 2, "section",
"LValue", 0, "/RValue///slashes/// r1",
&c, NULL);
/* test slashes */
"LValue", 0, "/RValue///slashes/// r1",
&c, NULL);
/* test slashes */
@@
-101,7
+106,7
@@
static void test_config_parse_exec(void) {
"r1", false);
/* honour_argv0 */
"r1", false);
/* honour_argv0 */
- r = config_parse_exec("fake", 3, "section",
+ r = config_parse_exec(
NULL,
"fake", 3, "section",
"LValue", 0, "@/RValue///slashes2/// argv0 r1",
&c, NULL);
assert_se(r >= 0);
"LValue", 0, "@/RValue///slashes2/// argv0 r1",
&c, NULL);
assert_se(r >= 0);
@@
-109,7
+114,7
@@
static void test_config_parse_exec(void) {
check_execcommand(c1, "/RValue/slashes2", "argv0", "r1", false);
/* ignore && honour_argv0 */
check_execcommand(c1, "/RValue/slashes2", "argv0", "r1", false);
/* ignore && honour_argv0 */
- r = config_parse_exec("fake", 4, "section",
+ r = config_parse_exec(
NULL,
"fake", 4, "section",
"LValue", 0, "-@/RValue///slashes3/// argv0a r1",
&c, NULL);
assert_se(r >= 0);
"LValue", 0, "-@/RValue///slashes3/// argv0a r1",
&c, NULL);
assert_se(r >= 0);
@@
-118,7
+123,7
@@
static void test_config_parse_exec(void) {
"/RValue/slashes3", "argv0a", "r1", true);
/* ignore && honour_argv0 */
"/RValue/slashes3", "argv0a", "r1", true);
/* ignore && honour_argv0 */
- r = config_parse_exec("fake", 4, "section",
+ r = config_parse_exec(
NULL,
"fake", 4, "section",
"LValue", 0, "@-/RValue///slashes4/// argv0b r1",
&c, NULL);
assert_se(r >= 0);
"LValue", 0, "@-/RValue///slashes4/// argv0b r1",
&c, NULL);
assert_se(r >= 0);
@@
-127,21
+132,21
@@
static void test_config_parse_exec(void) {
"/RValue/slashes4", "argv0b", "r1", true);
/* ignore && ignore */
"/RValue/slashes4", "argv0b", "r1", true);
/* ignore && ignore */
- r = config_parse_exec("fake", 4, "section",
+ r = config_parse_exec(
NULL,
"fake", 4, "section",
"LValue", 0, "--/RValue argv0 r1",
&c, NULL);
assert_se(r == 0);
assert_se(c1->command_next == NULL);
/* ignore && ignore */
"LValue", 0, "--/RValue argv0 r1",
&c, NULL);
assert_se(r == 0);
assert_se(c1->command_next == NULL);
/* ignore && ignore */
- r = config_parse_exec("fake", 4, "section",
+ r = config_parse_exec(
NULL,
"fake", 4, "section",
"LValue", 0, "-@-/RValue argv0 r1",
&c, NULL);
assert_se(r == 0);
assert_se(c1->command_next == NULL);
/* semicolon */
"LValue", 0, "-@-/RValue argv0 r1",
&c, NULL);
assert_se(r == 0);
assert_se(c1->command_next == NULL);
/* semicolon */
- r = config_parse_exec("fake", 5, "section",
+ r = config_parse_exec(
NULL,
"fake", 5, "section",
"LValue", 0,
"-@/RValue argv0 r1 ; "
"/goo/goo boo",
"LValue", 0,
"-@/RValue argv0 r1 ; "
"/goo/goo boo",
@@
-156,7
+161,7
@@
static void test_config_parse_exec(void) {
"/goo/goo", "/goo/goo", "boo", false);
/* trailing semicolon */
"/goo/goo", "/goo/goo", "boo", false);
/* trailing semicolon */
- r = config_parse_exec("fake", 5, "section",
+ r = config_parse_exec(
NULL,
"fake", 5, "section",
"LValue", 0,
"-@/RValue argv0 r1 ; ",
&c, NULL);
"LValue", 0,
"-@/RValue argv0 r1 ; ",
&c, NULL);
@@
-168,7
+173,7
@@
static void test_config_parse_exec(void) {
assert_se(c1->command_next == NULL);
/* escaped semicolon */
assert_se(c1->command_next == NULL);
/* escaped semicolon */
- r = config_parse_exec("fake", 5, "section",
+ r = config_parse_exec(
NULL,
"fake", 5, "section",
"LValue", 0,
"/usr/bin/find \\;",
&c, NULL);
"LValue", 0,
"/usr/bin/find \\;",
&c, NULL);
@@
-211,11
+216,11
@@
static void test_config_parse_exec(void) {
static void test_load_env_file_1(void) {
static void test_load_env_file_1(void) {
-
char _cleanup_strv_free_
**data = NULL;
+
_cleanup_strv_free_ char
**data = NULL;
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
-
int _cleanup_close_
fd = mkstemp(name);
+
_cleanup_close_ int
fd = mkstemp(name);
assert(fd >= 0);
assert_se(write(fd, env_file_1, sizeof(env_file_1)) == sizeof(env_file_1));
assert(fd >= 0);
assert_se(write(fd, env_file_1, sizeof(env_file_1)) == sizeof(env_file_1));
@@
-232,11
+237,11
@@
static void test_load_env_file_1(void) {
}
static void test_load_env_file_2(void) {
}
static void test_load_env_file_2(void) {
-
char _cleanup_strv_free_
**data = NULL;
+
_cleanup_strv_free_ char
**data = NULL;
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
-
int _cleanup_close_
fd = mkstemp(name);
+
_cleanup_close_ int
fd = mkstemp(name);
assert(fd >= 0);
assert_se(write(fd, env_file_2, sizeof(env_file_2)) == sizeof(env_file_2));
assert(fd >= 0);
assert_se(write(fd, env_file_2, sizeof(env_file_2)) == sizeof(env_file_2));
@@
-248,11
+253,11
@@
static void test_load_env_file_2(void) {
}
static void test_load_env_file_3(void) {
}
static void test_load_env_file_3(void) {
-
char _cleanup_strv_free_
**data = NULL;
+
_cleanup_strv_free_ char
**data = NULL;
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
-
int _cleanup_close_
fd = mkstemp(name);
+
_cleanup_close_ int
fd = mkstemp(name);
assert(fd >= 0);
assert_se(write(fd, env_file_3, sizeof(env_file_3)) == sizeof(env_file_3));
assert(fd >= 0);
assert_se(write(fd, env_file_3, sizeof(env_file_3)) == sizeof(env_file_3));
@@
-263,11
+268,11
@@
static void test_load_env_file_3(void) {
}
static void test_load_env_file_4(void) {
}
static void test_load_env_file_4(void) {
-
char _cleanup_strv_free_
**data = NULL;
+
_cleanup_strv_free_ char
**data = NULL;
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
int r;
char name[] = "/tmp/test-load-env-file.XXXXXX";
-
int _cleanup_close_
fd = mkstemp(name);
+
_cleanup_close_ int
fd = mkstemp(name);
assert(fd >= 0);
assert_se(write(fd, env_file_4, sizeof(env_file_4)) == sizeof(env_file_4));
assert(fd >= 0);
assert_se(write(fd, env_file_4, sizeof(env_file_4)) == sizeof(env_file_4));
@@
-295,19
+300,20
@@
static void test_install_printf(void) {
InstallInfo i3 = {name3, path3, user};
InstallInfo i4 = {name3, path3, NULL};
InstallInfo i3 = {name3, path3, user};
InstallInfo i4 = {name3, path3, NULL};
-
char _cleanup_free_
*mid, *bid, *host;
+
_cleanup_free_ char
*mid, *bid, *host;
- assert_se(
(mid = specifier_machine_id('m', NULL, NULL))
);
- assert_se(
(bid = specifier_boot_id('b', NULL, NULL))
);
+ assert_se(
specifier_machine_id('m', NULL, NULL, &mid) >= 0 && mid
);
+ assert_se(
specifier_boot_id('b', NULL, NULL, &bid) >= 0 && bid
);
assert_se((host = gethostname_malloc()));
#define expect(src, pattern, result) \
do { \
assert_se((host = gethostname_malloc()));
#define expect(src, pattern, result) \
do { \
-
char _cleanup_free_ *t = install_full_printf(&src, pattern);
\
-
char _cleanup_free_
\
+
_cleanup_free_ char *t = NULL;
\
+
_cleanup_free_ char
\
*d1 = strdup(i.name), \
*d2 = strdup(i.path), \
*d3 = strdup(i.user); \
*d1 = strdup(i.name), \
*d2 = strdup(i.path), \
*d3 = strdup(i.user); \
+ assert_se(install_full_printf(&src, pattern, &t) >= 0 || !result); \
memzero(i.name, strlen(i.name)); \
memzero(i.path, strlen(i.path)); \
memzero(i.user, strlen(i.user)); \
memzero(i.name, strlen(i.name)); \
memzero(i.path, strlen(i.path)); \
memzero(i.user, strlen(i.user)); \
@@
-351,14
+357,18
@@
static void test_install_printf(void) {
#pragma GCC diagnostic pop
int main(int argc, char *argv[]) {
#pragma GCC diagnostic pop
int main(int argc, char *argv[]) {
+ int r;
- test_unit_file_get_set();
+ log_parse_environment();
+ log_open();
+
+ r = test_unit_file_get_set();
test_config_parse_exec();
test_load_env_file_1();
test_load_env_file_2();
test_load_env_file_3();
test_load_env_file_4();
test_config_parse_exec();
test_load_env_file_1();
test_load_env_file_2();
test_load_env_file_3();
test_load_env_file_4();
-
test_install_printf(
);
+
TEST_REQ_RUNNING_SYSTEMD(test_install_printf()
);
- return
0
;
+ return
r
;
}
}