test_template + {
'sources' : files('test-journal-header-util.c'),
'conditions' : ['ENABLE_REMOTE', 'HAVE_LIBCURL'],
- 'import' : ['systemd-journal-upload'],
+ 'import' : ['systemd-journal-remote', 'systemd-journal-upload'],
},
fuzz_template + {
'sources' : files('fuzz-journal-remote.c'),
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include "hashmap.h"
+#include "journal-compression-util.h"
#include "journal-header-util.h"
#include "tests.h"
ASSERT_ERROR(header_put(&headers, "", "Value"), EINVAL);
}
+TEST(compression_none_then_algorithm) {
+ _cleanup_ordered_hashmap_free_ OrderedHashmap *configs = NULL;
+ Compression compression = COMPRESSION_NONE;
+
+ for (Compression c = 1; c < _COMPRESSION_MAX; c++)
+ if (compression_supported(c)) {
+ compression = c;
+ break;
+ }
+
+ if (compression == COMPRESSION_NONE)
+ return (void) log_tests_skipped("No compression algorithm supported");
+
+ ASSERT_OK_POSITIVE(config_parse_compression(
+ "test", "test.conf", 1, "Upload", 1, "Compression", false, "no", &configs, NULL));
+ ASSERT_TRUE(ordered_hashmap_contains(configs, INT_TO_PTR(COMPRESSION_NONE)));
+
+ ASSERT_OK_POSITIVE(config_parse_compression(
+ "test", "test.conf", 2, "Upload", 1, "Compression", false,
+ compression_to_string(compression), &configs, NULL));
+ ASSERT_FALSE(ordered_hashmap_contains(configs, INT_TO_PTR(COMPRESSION_NONE)));
+ ASSERT_NOT_NULL(ordered_hashmap_get(configs, INT_TO_PTR(compression)));
+
+ ASSERT_OK(compression_configs_mangle(&configs));
+}
+
DEFINE_TEST_MAIN(LOG_DEBUG);