From 946027f6abde1da314be45667b3038cdd2df656d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> Date: Sun, 5 Jan 2025 15:16:32 +0200 Subject: [PATCH] test: extend blob_split tests --- test/unit/blob_test.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/test/unit/blob_test.c b/test/unit/blob_test.c index 898cfe5f..9f93d856 100644 --- a/test/unit/blob_test.c +++ b/test/unit/blob_test.c @@ -19,12 +19,21 @@ APK_TEST(blob_contains) { assert_int_equal(4, apk_blob_contains(APK_BLOB_STRLIT("bar foo"), APK_BLOB_STRLIT("foo"))); } -APK_TEST(blob_split) { +static void _assert_split(apk_blob_t b, apk_blob_t split, apk_blob_t el, apk_blob_t er, const char *const file, int lineno) +{ apk_blob_t l, r; + _assert_int_equal(1, apk_blob_split(b, split, &l, &r), file, lineno); + _assert_blob_equal(l, el, file, lineno); + _assert_blob_equal(r, er, file, lineno); +} +#define assert_split(b, split, el, er) _assert_split(b, split, el, er, __FILE__, __LINE__) + +APK_TEST(blob_split) { + apk_blob_t l, r, foo = APK_BLOB_STRLIT("foo"), bar = APK_BLOB_STRLIT("bar"); + assert_int_equal(0, apk_blob_split(APK_BLOB_STRLIT("bar bar"), APK_BLOB_STRLIT("foo"), &l, &r)); - assert_int_equal(1, apk_blob_split(APK_BLOB_STRLIT("bar foo"), APK_BLOB_STRLIT(" "), &l, &r)); - assert_int_equal(0, apk_blob_compare(l, APK_BLOB_STRLIT("bar"))); - assert_int_equal(0, apk_blob_compare(r, APK_BLOB_STRLIT("foo"))); + assert_split(APK_BLOB_STRLIT("bar foo"), APK_BLOB_STRLIT(" "), bar, foo); + assert_split(APK_BLOB_STRLIT("bar = foo"), APK_BLOB_STRLIT(" = "), bar, foo); } APK_TEST(blob_url_sanitize) { -- GitLab