From 158b28313f5ff978b98ea2006608ff8e6bb695c3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 25 Oct 2020 12:20:38 +0100 Subject: [PATCH] test: add a simple test for the qr printing code Ideally, we'd read back what we wrote, but that would have been much more complicated. But just writing stuff is useful to test under valgrind or manually. --- src/test/meson.build | 4 ++++ src/test/test-qrcode-util.c | 23 +++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 src/test/test-qrcode-util.c diff --git a/src/test/meson.build b/src/test/meson.build index ac1182e37a2..71f3e121783 100644 --- a/src/test/meson.build +++ b/src/test/meson.build @@ -808,6 +808,10 @@ tests += [ [['src/test/test-psi-util.c'], [], []], + + [['src/test/test-qrcode-util.c'], + [libshared], + [libdl]], ] ############################################################ diff --git a/src/test/test-qrcode-util.c b/src/test/test-qrcode-util.c new file mode 100644 index 00000000000..c4e2894eb71 --- /dev/null +++ b/src/test/test-qrcode-util.c @@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: LGPL-2.1+ */ + +#include "locale-util.h" +#include "main-func.h" +#include "qrcode-util.h" +#include "tests.h" + +static int run(int argc, char **argv) { + int r; + + test_setup_logging(LOG_DEBUG); + + assert_se(setenv("SYSTEMD_COLORS", "1", 1) == 0); /* Force the qrcode to be printed */ + + r = print_qrcode(stdout, "This should say \"TEST\"", "TEST"); + if (r == -EOPNOTSUPP) + return log_tests_skipped("not supported"); + if (r < 0) + return log_error_errno(r, "Failed to print QR code: %m"); + return 0; +} + +DEFINE_MAIN_FUNCTION(run); -- 2.47.3