diff options
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/meson.build | 2 | ||||
-rw-r--r-- | src/test/test-calendarspec.c | 4 | ||||
-rw-r--r-- | src/test/test-cgroup-util.c | 20 |
3 files changed, 24 insertions, 2 deletions
diff --git a/src/test/meson.build b/src/test/meson.build index 7f96be8f55..b133980e45 100644 --- a/src/test/meson.build +++ b/src/test/meson.build @@ -893,12 +893,14 @@ tests += [ [libjournal_core, libshared], [liblz4, + libzstd, libxz]], [['src/journal/test-compress-benchmark.c'], [libjournal_core, libshared], [liblz4, + libzstd, libxz], '', 'timeout=90'], diff --git a/src/test/test-calendarspec.c b/src/test/test-calendarspec.c index 9c2be7f445..9e2ae55ab6 100644 --- a/src/test/test-calendarspec.c +++ b/src/test/test-calendarspec.c @@ -185,6 +185,8 @@ int main(int argc, char* argv[]) { test_one("@1493187147 UTC", "2017-04-26 06:12:27 UTC"); test_one("@0", "1970-01-01 00:00:00 UTC"); test_one("@0 UTC", "1970-01-01 00:00:00 UTC"); + test_one("*:05..05", "*-*-* *:05:00"); + test_one("*:05..10/6", "*-*-* *:05:00"); test_next("2016-03-27 03:17:00", "", 12345, 1459048620000000); test_next("2016-03-27 03:17:00", "CET", 12345, 1459041420000000); @@ -237,8 +239,6 @@ int main(int argc, char* argv[]) { assert_se(calendar_spec_from_string("*~29", &c) < 0); assert_se(calendar_spec_from_string("*~16..31", &c) < 0); assert_se(calendar_spec_from_string("12..1/2-*", &c) < 0); - assert_se(calendar_spec_from_string("*:05..05", &c) < 0); - assert_se(calendar_spec_from_string("*:05..10/6", &c) < 0); assert_se(calendar_spec_from_string("20/4:00", &c) < 0); assert_se(calendar_spec_from_string("00:00/60", &c) < 0); assert_se(calendar_spec_from_string("00:00:2300", &c) < 0); diff --git a/src/test/test-cgroup-util.c b/src/test/test-cgroup-util.c index daaffb5a06..ea47f5affa 100644 --- a/src/test/test-cgroup-util.c +++ b/src/test/test-cgroup-util.c @@ -384,22 +384,42 @@ static void test_cg_get_keyed_attribute(void) { } assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("no_such_attr"), &val) == -ENXIO); + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", STRV_MAKE("no_such_attr"), &val) == 0); assert_se(val == NULL); assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec"), &val) == 0); + val = mfree(val); + + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec"), &val) == 1); log_info("cpu /init.scope cpu.stat [usage_usec] → \"%s\"", val); assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec", "no_such_attr"), vals3) == -ENXIO); + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec", "no_such_attr"), vals3) == 1); + assert(vals3[0] && !vals3[1]); + free(vals3[0]); assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec", "usage_usec"), vals3) == -ENXIO); + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec", "usage_usec"), vals3) == 1); + assert(vals3[0] && !vals3[1]); + free(vals3[0]); assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("usage_usec", "user_usec", "system_usec"), vals3) == 0); + for (i = 0; i < 3; i++) + free(vals3[i]); + + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", + STRV_MAKE("usage_usec", "user_usec", "system_usec"), vals3) == 3); log_info("cpu /init.scope cpu.stat [usage_usec user_usec system_usec] → \"%s\", \"%s\", \"%s\"", vals3[0], vals3[1], vals3[2]); assert_se(cg_get_keyed_attribute("cpu", "/init.scope", "cpu.stat", STRV_MAKE("system_usec", "user_usec", "usage_usec"), vals3a) == 0); + for (i = 0; i < 3; i++) + free(vals3a[i]); + + assert_se(cg_get_keyed_attribute_graceful("cpu", "/init.scope", "cpu.stat", + STRV_MAKE("system_usec", "user_usec", "usage_usec"), vals3a) == 3); log_info("cpu /init.scope cpu.stat [system_usec user_usec usage_usec] → \"%s\", \"%s\", \"%s\"", vals3a[0], vals3a[1], vals3a[2]); |