From 0246f42980ed87dfca79fd4a8ec67a81d824e427 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 1 Apr 2021 10:11:30 +0200 Subject: [PATCH] test-device-util: let's verify that we return proper error from log_device_* --- src/libsystemd/meson.build | 2 ++ src/libsystemd/sd-device/test-device-util.c | 30 +++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 src/libsystemd/sd-device/test-device-util.c diff --git a/src/libsystemd/meson.build b/src/libsystemd/meson.build index ad50815a7b6..3def5655ccf 100644 --- a/src/libsystemd/meson.build +++ b/src/libsystemd/meson.build @@ -307,6 +307,8 @@ tests += [ [['src/libsystemd/sd-device/test-sd-device.c']], + [['src/libsystemd/sd-device/test-device-util.c']], + [['src/libsystemd/sd-device/test-sd-device-monitor.c']], ] diff --git a/src/libsystemd/sd-device/test-device-util.c b/src/libsystemd/sd-device/test-device-util.c new file mode 100644 index 00000000000..93fc105d984 --- /dev/null +++ b/src/libsystemd/sd-device/test-device-util.c @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ + +#include "device-util.h" +#include "tests.h" + +static void test_log_device_full(void) { + int r; + + log_info("/* %s */", __func__); + + for (int level = LOG_ERR; level <= LOG_DEBUG; level++) { + log_device_full(NULL, level, "test level=%d: %m", level); + + r = log_device_full_errno(NULL, level, EUCLEAN, "test level=%d errno=EUCLEAN: %m", level); + assert_se(r == -EUCLEAN); + + r = log_device_full_errno(NULL, level, 0, "test level=%d errno=0: %m", level); + assert_se(r == 0); + + r = log_device_full_errno(NULL, level, SYNTHETIC_ERRNO(ENODATA), "test level=%d errno=S(ENODATA): %m", level); + assert_se(r == -ENODATA); + } +} + +int main(int argc, char **argv) { + test_setup_logging(LOG_INFO); + + test_log_device_full(); + return 0; +} -- 2.47.3