From: Baptiste Daroussin Date: Mon, 6 Feb 2023 08:11:19 +0000 (+0100) Subject: tests: add simple test for get_preppedhdrs_from_map X-Git-Tag: RELEASE_1_4_0b1~239 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=96dc3f1af1529eb222ce5a1212cfdfadc9ae8a07;p=thirdparty%2Fmlmmj.git tests: add simple test for get_preppedhdrs_from_map --- diff --git a/tests/mlmmj.c b/tests/mlmmj.c index 1098c682..fb7e42e9 100644 --- a/tests/mlmmj.c +++ b/tests/mlmmj.c @@ -124,6 +124,7 @@ ATF_TC_WITHOUT_HEAD(copy_file_2); ATF_TC_WITHOUT_HEAD(controls); ATF_TC_WITHOUT_HEAD(incindexfile); ATF_TC_WITHOUT_HEAD(log_oper); +ATF_TC_WITHOUT_HEAD(get_preppedhdrs_from_map); #ifndef NELEM #define NELEM(array) (sizeof(array) / sizeof((array)[0])) @@ -1872,6 +1873,26 @@ ATF_TC_BODY(log_oper, tc) } } +ATF_TC_BODY(get_preppedhdrs_from_map, tc) +{ + struct stat st; + FILE *f = fopen("./mailfile", "w+"); + + fprintf(f, "head1: plop\nhead2\n\nbody\n"); + fclose(f); + + stat("./mailfile", &st); + int fd = open("./mailfile", O_RDONLY); + ATF_REQUIRE(fd != -1); + char *map = mmap(0, st.st_size, PROT_READ, MAP_SHARED, fd, 0); + ATF_REQUIRE(map != NULL); + size_t len = 0; + ATF_REQUIRE(get_preppedhdrs_from_map(map, &len) != NULL); + ATF_REQUIRE_EQ(len, 20); + munmap(map, st.st_size); + close(fd); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, random_int); @@ -1937,6 +1958,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, controls); ATF_TP_ADD_TC(tp, incindexfile); ATF_TP_ADD_TC(tp, log_oper); + ATF_TP_ADD_TC(tp, get_preppedhdrs_from_map); return (atf_no_error()); }