From: Arne Schwabe Date: Wed, 25 Dec 2024 16:56:29 +0000 (+0100) Subject: Add small unit test for buf_chomp X-Git-Tag: v2.7_alpha1~140 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bd629d7c8b389bdece3c195552acf4343021b9b8;p=thirdparty%2Fopenvpn.git Add small unit test for buf_chomp Change-Id: Ia0799189d45223e0b987a5a4da5be60404388f1f Signed-off-by: Arne Schwabe Acked-by: Gert Doering Message-Id: <20241225165629.5558-1-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg30206.html Signed-off-by: Gert Doering --- diff --git a/tests/unit_tests/openvpn/test_buffer.c b/tests/unit_tests/openvpn/test_buffer.c index 0fb46973e..d43d5c1ec 100644 --- a/tests/unit_tests/openvpn/test_buffer.c +++ b/tests/unit_tests/openvpn/test_buffer.c @@ -426,6 +426,32 @@ test_snprintf(void **state) #endif } +void +test_buffer_chomp(void **state) +{ + struct gc_arena gc = gc_new(); + struct buffer buf = alloc_buf_gc(1024, &gc); + + const char test1[] = "There is a nice 1234 year old tree!\n\r"; + buf_write(&buf, test1, sizeof(test1)); + buf_chomp(&buf); + /* Check that our own method agrees */ + assert_true(string_check_buf(&buf, CC_PRINT | CC_NULL, CC_CRLF)); + assert_string_equal(BSTR(&buf), "There is a nice 1234 year old tree!"); + + struct buffer buf2 = alloc_buf_gc(1024, &gc); + const char test2[] = "CR_RESPONSE,MTIx\x0a\x00"; + buf_write(&buf2, test2, sizeof(test2)); + buf_chomp(&buf2); + + buf_chomp(&buf2); + /* Check that our own method agrees */ + assert_true(string_check_buf(&buf2, CC_PRINT | CC_NULL, CC_CRLF)); + assert_string_equal(BSTR(&buf2), "CR_RESPONSE,MTIx"); + + gc_free(&gc); +} + int main(void) { @@ -460,7 +486,8 @@ main(void) cmocka_unit_test(test_buffer_gc_realloc), cmocka_unit_test(test_character_class), cmocka_unit_test(test_character_string_mod_buf), - cmocka_unit_test(test_snprintf) + cmocka_unit_test(test_snprintf), + cmocka_unit_test(test_buffer_chomp) }; return cmocka_run_group_tests_name("buffer", tests, NULL, NULL);