diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-01-31 08:08:59 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-01-31 08:48:42 +0100 |
| commit | 9db52bc5ef545a3fa9973002e9a28a2ece68d029 (patch) | |
| tree | 0a1f36d989c6c3cb74e3bc5d5997c6a4c3f058b9 /vendor/_unity/include/unity_memory.h | |
| parent | 3b884e3836c70b1a19eb7778308fadbc608b0384 (diff) | |
| download | libft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.tar.gz libft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.tar.bz2 libft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.zip | |
Setup unit test with unity
Diffstat (limited to 'vendor/_unity/include/unity_memory.h')
| -rw-r--r-- | vendor/_unity/include/unity_memory.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/vendor/_unity/include/unity_memory.h b/vendor/_unity/include/unity_memory.h new file mode 100644 index 0000000..ccdb826 --- /dev/null +++ b/vendor/_unity/include/unity_memory.h @@ -0,0 +1,60 @@ +/* ========================================== + * Unity Project - A Test Framework for C + * Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams + * [Released under MIT License. Please refer to license.txt for details] + * ========================================== */ + +#ifndef UNITY_MEMORY_OVERRIDES_H_ +#define UNITY_MEMORY_OVERRIDES_H_ + +#ifdef __cplusplus +extern "C" +{ +#endif + +#include <stddef.h> + +#ifdef UNITY_EXCLUDE_STDLIB_MALLOC +/* Define this macro to remove the use of stdlib.h, malloc, and free. + * Many embedded systems do not have a heap or malloc/free by default. + * This internal unity_malloc() provides allocated memory deterministically from + * the end of an array only, unity_free() only releases from end-of-array, + * blocks are not coalesced, and memory not freed in LIFO order is stranded. */ + #ifndef UNITY_INTERNAL_HEAP_SIZE_BYTES + #define UNITY_INTERNAL_HEAP_SIZE_BYTES 256 + #endif +#endif + +/* These functions are used by Unity to allocate and release memory + * on the heap and can be overridden with platform-specific implementations. + * For example, when using FreeRTOS UNITY_MALLOC becomes pvPortMalloc() + * and UNITY_FREE becomes vPortFree(). */ +#if !defined(UNITY_MALLOC) || !defined(UNITY_FREE) + #include <stdlib.h> + #define UNITY_MALLOC(size) malloc(size) + #define UNITY_FREE(ptr) free(ptr) +#else + extern void* UNITY_MALLOC(size_t size); + extern void UNITY_FREE(void* ptr); +#endif + +#define malloc unity_malloc +#define calloc unity_calloc +#define realloc unity_realloc +#define free unity_free + +void* unity_malloc(size_t size); +void* unity_calloc(size_t num, size_t size); +void* unity_realloc(void * oldMem, size_t size); +void unity_free(void * mem); + +/* You must compile with malloc replacement, as defined in unity_fixture_malloc_overrides.h */ +void UnityMalloc_StartTest(void); +void UnityMalloc_EndTest(void); +void UnityMalloc_MakeMallocFailAfterCount(int countdown); + +#ifdef __cplusplus +} +#endif + +#endif |
