/
githubmirror
/
libreport
Обзор
Документация
Войти
/
githubmirror
/
libreport
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.13.1
tests/strbuf.at
96 строк
2 KB
Michal Fabik
internal_libreport: Fix namespacing with #defines
14 апр 2020, 12:42
14 апр 2020, 12:42
2beaddf
Код
Авторство
О чём код?
# -*- Autotest -*- AT_BANNER([strbuf]) ## ---------------------------- ## ## libreport_strbuf_append_char ## ## ---------------------------- ## AT_TESTFUN([libreport_strbuf_append_char], [[ #include "internal_libreport.h" #include <assert.h> int main(void) { int i; struct strbuf *strbuf = libreport_strbuf_new(); for (i = 0; i < 100; ++i) { assert(strbuf->len == i); assert(strbuf->alloc > strbuf->len); assert(strbuf->buf[i] == '\0'); libreport_strbuf_append_char(strbuf, 'a'); assert(strbuf->buf[i] == 'a'); assert(strbuf->buf[i+1] == '\0'); assert(strbuf->len == i + 1); assert(strbuf->alloc > strbuf->len); } libreport_strbuf_free(strbuf); return 0; } ]]) ## --------------------------- ## ## libreport_strbuf_append_str ## ## --------------------------- ## AT_TESTFUN([libreport_strbuf_append_str], [[ #include "internal_libreport.h" #include <assert.h> /* Test appending strings of certain length. 'len' must be < 50. */ void test(int len) { int i; char str[50]; for (i = 0; i < len; ++i) str[i] = 'a'; str[i] = '\0'; struct strbuf *strbuf = libreport_strbuf_new(); for (i = 0; i < 100; ++i) { assert(strbuf->len == i*len); assert(strbuf->alloc > strbuf->len); assert(strbuf->buf[i*len] == '\0'); libreport_strbuf_append_str(strbuf, str); assert(strbuf->buf[i*len] == str[0]); assert(strbuf->buf[i*len+len] == '\0'); assert(strbuf->len == i*len + len); assert(strbuf->alloc > strbuf->len); } libreport_strbuf_free(strbuf); } int main(void) { int i; for (i = 0; i < 50; ++i) test(i); return 0; } ]]) ## --------------------- ## ## libreport_strremovech ## ## --------------------- ## AT_TESTFUN([libreport_strremovech], [[ #include "internal_libreport.h" #include <assert.h> int main(void) { char test[] = "Hello , world!"; if (strcmp(libreport_strremovech(test, ' '), "Hello,world!") != 0) { fprintf(stderr, "Expected: 'Hello,world!'\nResult : '%s'", test); assert(!"Failed to remove space"); } return 0; } ]])