nextcloud-desktop/tests/std_tests/check_std_c_alloc.c

71 lines
1.1 KiB
C
Raw Normal View History

#include "torture.h"
2008-02-27 20:56:47 +03:00
#include "std/c_alloc.h"
struct test_s {
int answer;
};
static void check_c_malloc(void **state)
2008-02-27 20:56:47 +03:00
{
struct test_s *p = NULL;
(void) state; /* unused */
2008-02-27 20:56:47 +03:00
p = c_malloc(sizeof(struct test_s));
assert_non_null(p);
assert_int_equal(p->answer, 0);
2008-02-27 20:56:47 +03:00
p->answer = 42;
assert_int_equal(p->answer, 42);
2008-02-27 20:56:47 +03:00
free(p);
}
static void check_c_malloc_zero(void **state)
2008-02-27 20:56:47 +03:00
{
void *p;
(void) state; /* unused */
2008-02-27 20:56:47 +03:00
p = c_malloc((size_t) 0);
assert_null(p);
2008-02-27 20:56:47 +03:00
}
static void check_c_strdup(void **state)
2008-02-27 20:56:47 +03:00
{
2008-07-28 13:49:56 +04:00
const char *str = "test";
char *tdup = NULL;
2008-02-27 20:56:47 +03:00
(void) state; /* unused */
2008-04-18 21:16:54 +04:00
tdup = c_strdup(str);
assert_string_equal(tdup, str);
2008-07-28 13:49:56 +04:00
2008-04-18 21:16:54 +04:00
free(tdup);
2008-02-27 20:56:47 +03:00
}
static void check_c_strndup(void **state)
2008-07-28 13:49:56 +04:00
{
const char *str = "test";
char *tdup = NULL;
(void) state; /* unused */
2008-07-28 13:49:56 +04:00
tdup = c_strndup(str, 3);
assert_memory_equal(tdup, "tes", 3);
2008-07-28 13:49:56 +04:00
free(tdup);
}
int torture_run_tests(void)
2008-07-28 13:49:56 +04:00
{
const UnitTest tests[] = {
unit_test(check_c_malloc),
unit_test(check_c_malloc_zero),
unit_test(check_c_strdup),
unit_test(check_c_strndup),
};
return run_tests(tests);
2008-02-27 20:56:47 +03:00
}