diff options
author | Ralf Habacker <ralf.habacker@freenet.de> | 2023-01-19 16:18:56 +0100 |
---|---|---|
committer | Simon McVittie <smcv@collabora.com> | 2023-02-08 12:03:19 +0000 |
commit | 8189a74c6cc40c0ce10b91eb999ab26f7ceef82b (patch) | |
tree | e4e87a81455f8b4125c58735b5fd438121f53689 /test/internals/strings.c | |
parent | 7a30ab94e698f3f641ff1576f6310fa099956e87 (diff) | |
download | dbus-8189a74c6cc40c0ce10b91eb999ab26f7ceef82b.tar.gz |
Add test for _dbus_string_skip_blank()
[smcv: Fix a memory leak]
Reproduces: https://gitlab.freedesktop.org/dbus/dbus/-/issues/421
Diffstat (limited to 'test/internals/strings.c')
-rw-r--r-- | test/internals/strings.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/test/internals/strings.c b/test/internals/strings.c new file mode 100644 index 00000000..6027e6a2 --- /dev/null +++ b/test/internals/strings.c @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2023 Ralf Habacker + * SPDX-License-Identifier: MIT + */ + +#include <config.h> + +#include "dbus/dbus-string.h" +#include "dbus/dbus-test.h" +#include "dbus/dbus-test-tap.h" +#include "test/test-utils.h" + +static dbus_bool_t +_dbus_string_skip_blank_test (const char *test_data_dir _DBUS_GNUC_UNUSED) +{ + int end; + DBusString s = _DBUS_STRING_INIT_INVALID; + const char *p = " \rT\r\n"; + + _dbus_string_init (&s); + if (!_dbus_string_append (&s, p)) + { + _dbus_string_free (&s); + return FALSE; + } + + _dbus_string_skip_blank (&s, 0, &end); + _dbus_string_free (&s); + return TRUE; +} + +static const DBusTestCase test[] = +{ + { "skip_blank", _dbus_string_skip_blank_test }, +}; + + +int +main (int argc, + char **argv) +{ + return _dbus_test_main (argc, argv, sizeof(test) / sizeof (DBusTestCase), test, + DBUS_TEST_FLAGS_CHECK_MEMORY_LEAKS, + NULL, NULL); +} |