serialize: add serialize_item_base64mem()

This commit is contained in:
Luca Boccassi
2023-10-12 13:37:22 +01:00
parent 3f12c5ff2e
commit 6dae20ec41
3 changed files with 41 additions and 0 deletions
+17
View File
@@ -208,6 +208,23 @@ TEST(serialize_item_hexmem) {
}
TEST(serialize_item_base64mem) {
_cleanup_(unlink_tempfilep) char fn[] = "/tmp/test-serialize.XXXXXX";
_cleanup_fclose_ FILE *f = NULL;
assert_se(fmkostemp_safe(fn, "r+", &f) == 0);
log_info("/* %s (%s) */", __func__, fn);
assert_se(serialize_item_base64mem(f, "a", NULL, 0) == 0);
assert_se(serialize_item_base64mem(f, "a", (uint8_t []){0xff, 0xff, 0xff}, sizeof(uint8_t) * 3) == 1);
rewind(f);
_cleanup_free_ char *line = NULL;
assert_se(read_line(f, LONG_LINE_MAX, &line) > 0);
assert_se(streq(line, "a=////"));
}
static int intro(void) {
memset(long_string, 'x', sizeof(long_string)-1);
char_array_0(long_string);