diff --git a/README.md b/README.md index eb39f4b..4ca8d4a 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,5 @@ Arena Allocator of the NI-C system ## Dependencies -- [ni-const](https://codecave.studiosi.es/studiosi/ni-const) constants library of the NI-C system \ No newline at end of file +- [ni-const](https://codecave.studiosi.es/studiosi/ni-const) constants library of the NI-C system +- [ni-leakdetector](https://codecave.studiosi.es/studiosi/ni-leakdetector) leak detector of the NI-C system \ No newline at end of file diff --git a/makefile b/makefile index bf1568e..b37c788 100644 --- a/makefile +++ b/makefile @@ -15,12 +15,7 @@ test: bin/test bin/test/niarena_test_alloc_arena bin/test/niarena_test_alloc_buffer -leaks: bin/test - leaks --atExit -- bin/test/niarena_test - leaks --atExit -- bin/test/niarena_test_alloc_arena - leaks --atExit -- bin/test/niarena_test_alloc_buffer - -.PHONY: clean format test leaks +.PHONY: clean format test bin/test: test/niarena_test.c mkdir -p bin/test diff --git a/test/niarena_test.c b/test/niarena_test.c index 87ae76b..388ba7a 100644 --- a/test/niarena_test.c +++ b/test/niarena_test.c @@ -1,7 +1,9 @@ #define N_INTS_TEST 4 #define NIARENA_ARENA_SIZE (N_INTS_TEST * sizeof(int)) #define NIARENA_IMPLEMENTATION +#define NILEAKDETECTOR_VERBOSE true +#include "../../ni-leakdetector/nileakdetector.h" #include "../niarena.h" #include #include @@ -14,6 +16,7 @@ test_arena_new() assert(arena->offset == 0); assert(arena->capacity == (N_INTS_TEST * sizeof(int))); niarena_delete(arena); + nileakdetector_print_summary(); } void @@ -40,6 +43,7 @@ test_arena_allocations() } niarena_delete(arena); + nileakdetector_print_summary(); } int diff --git a/test/niarena_test_alloc_arena.c b/test/niarena_test_alloc_arena.c index 0a4d1da..98597b7 100644 --- a/test/niarena_test_alloc_arena.c +++ b/test/niarena_test_alloc_arena.c @@ -1,5 +1,7 @@ #include #include +#include +#include void * bad_malloc(size_t sz) @@ -14,6 +16,7 @@ mock_free(void *p) { free(p); } + #define NIARENA_FREE(p) mock_free(p) #define N_INTS_TEST 4 @@ -21,8 +24,6 @@ mock_free(void *p) #define NIARENA_IMPLEMENTATION #include "../niarena.h" -#include -#include void niarena_test_malloc_fail_arena() diff --git a/test/niarena_test_alloc_buffer.c b/test/niarena_test_alloc_buffer.c index a9f2b8d..017e874 100644 --- a/test/niarena_test_alloc_buffer.c +++ b/test/niarena_test_alloc_buffer.c @@ -1,3 +1,6 @@ +#define NILEAKDETECTOR_VERBOSE true +#include "../../ni-leakdetector/nileakdetector.h" + #include #include @@ -35,6 +38,7 @@ niarena_test_malloc_fail_buffer() assert(arena == NULL); const char *err = niarena_get_error(); assert(strcmp(err, "niarena_new: out of memory allocating buffer") == 0); + nileakdetector_print_summary(); } int