#include #include void * bad_malloc(size_t sz) { (void)sz; return NULL; } #define NIARENA_MALLOC(sz) bad_malloc(sz) void mock_free(void *p) { free(p); } #define NIARENA_FREE(p) mock_free(p) #define N_INTS_TEST 4 #define NIARENA_ARENA_SIZE (N_INTS_TEST * sizeof(int)) #define NIARENA_IMPLEMENTATION #include "../niarena.h" #include #include void niarena_test_malloc_fail_arena() { NIArena *arena = niarena_new(); assert(arena == NULL); const char *err = niarena_get_error(); assert(strcmp(err, "niarena_new: out of memory allocating arena") == 0); } int main() { niarena_test_malloc_fail_arena(); printf("== TESTS SUCCESSFUL ==\n"); return 0; }