tests/test_allocator.c

Fri, 23 May 2025 12:44:24 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 23 May 2025 12:44:24 +0200
changeset 1327
ed75dc1db503
parent 1326
9bf5945d91ab
child 1330
33c95cfc088e
permissions
-rw-r--r--

make test-compile depend on both static and shared

the shared lib is not needed for the tests,
but when run with coverage, gcov will be confused
when outdated line information is available from
a previous shared build

782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 /*
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 *
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4 * Copyright 2023 Mike Becker, Olaf Wintermann All rights reserved.
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 *
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 *
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 *
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 *
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
27 */
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
28
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
29 #include "cx/test.h"
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
30
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
31 #if __GNUC__
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
32 // we want to perform overflow tests, but we don't want warnings about them
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
33 #define __alloc_size__(...) // NOLINT(*-reserved-identifier)
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
34 #endif
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
35
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
36 #include "cx/allocator.h"
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
37 #include <errno.h>
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
38
1326
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
39 CX_TEST(test_allocator_stdlib_malloc) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
40 void *test = cxMalloc(cxStdlibAllocator, 16);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
41 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
42 CX_TEST_ASSERT(test != NULL);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
43 // we cannot assert sth. but valgrind will detect an error
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
44 memcpy(test, "0123456789ABCDEF", 16);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
45 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
46 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
47 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
48
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
49 CX_TEST(test_allocator_stdlib_calloc) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
50 char *test = cxCalloc(cxStdlibAllocator, 8, 2);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
51 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
52 CX_TEST_ASSERT(test != NULL);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
53 for (int i = 0; i < 16; i++) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
54 CX_TEST_ASSERT(test[i] == 0);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
55 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
56 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
57 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
58 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
59
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
60 CX_TEST(test_allocator_stdlib_realloc) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
61 char *test = cxCalloc(cxStdlibAllocator, 8, 1);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
62 memcpy(test, "Test", 5);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
63 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
64 test = cxRealloc(cxStdlibAllocator, test, 16);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
65 CX_TEST_ASSERT(test != NULL);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
66 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
67 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
68 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
69 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
70
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
71 CX_TEST(test_allocator_stdlib_reallocarray) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
72 char *test = cxCalloc(cxStdlibAllocator, 8, 1);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
73 memcpy(test, "Test", 5);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
74 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
75 test = cxReallocArray(cxStdlibAllocator, test, 16, 2);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
76 CX_TEST_ASSERT(test != NULL);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
77 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
78 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
79 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
80 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
81
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
82 CX_TEST(test_allocator_stdlib_reallocarray_overflow) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
83 char *test = cxCalloc(cxStdlibAllocator, 8, 1);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
84 memcpy(test, "Test", 5);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
85 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
86 void *fail = cxReallocArray(cxStdlibAllocator, test, SIZE_MAX/2, 4);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
87 CX_TEST_ASSERT(errno == EOVERFLOW);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
88 CX_TEST_ASSERT(fail == NULL);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
89 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
90 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
91 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
92 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
93
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
94 CX_TEST(test_allocator_stdlib_free) {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
95 void *test = cxMalloc(cxStdlibAllocator, 16);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
96 CX_TEST_DO {
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
97 // we cannot assert sth. but valgrind will detect an error
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
98 cxFree(cxStdlibAllocator, test);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
99 CX_TEST_ASSERT(true);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
100 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
101 }
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
102
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
103 CX_TEST(test_allocator_default_malloc) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
104 void *test = cxMallocDefault(16);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
105 CX_TEST_DO {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
106 CX_TEST_ASSERT(test != NULL);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
107 // we cannot assert sth. but valgrind will detect an error
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
108 memcpy(test, "0123456789ABCDEF", 16);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
109 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
110 cxFreeDefault(test);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
111 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
112
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
113 CX_TEST(test_allocator_default_calloc) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
114 char *test = cxCallocDefault(8, 2);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
115 CX_TEST_DO {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
116 CX_TEST_ASSERT(test != NULL);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
117 for (int i = 0; i < 16; i++) {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
118 CX_TEST_ASSERT(test[i] == 0);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
119 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
120 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
121 cxFreeDefault(test);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
122 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
123
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
124 CX_TEST(test_allocator_default_realloc) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
125 char *test = cxCallocDefault(8, 1);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 memcpy(test, "Test", 5);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
128 test = cxReallocDefault(test, 16);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129 CX_TEST_ASSERT(test != NULL);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
132 cxFreeDefault(test);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
133 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
134
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
135 CX_TEST(test_allocator_default_reallocarray) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
136 char *test = cxCallocDefault(8, 1);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
137 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
138 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
139 test = cxReallocArrayDefault(test, 16, 2);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
140 CX_TEST_ASSERT(test != NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
141 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
142 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
143 cxFreeDefault(test);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
144 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
145
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
146 CX_TEST(test_allocator_default_reallocarray_overflow) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
147 char *test = cxCallocDefault(8, 1);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
148 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
149 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
150 void *fail = cxReallocArrayDefault(test, SIZE_MAX/2, 4);
1040
1ecf4dbbc60c add some more overflow treatment and make sure to set errno properly
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
151 CX_TEST_ASSERT(errno == EOVERFLOW);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
152 CX_TEST_ASSERT(fail == NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
153 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
154 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
155 cxFreeDefault(test);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
156 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
157
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
158 CX_TEST(test_allocator_default_free) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
159 void *test = cxMallocDefault(16);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
160 CX_TEST_DO {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
161 // we cannot assert sth. but valgrind will detect an error
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
162 cxFreeDefault(test);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
163 CX_TEST_ASSERT(true);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
164 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
165 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
166
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
167 CX_TEST(test_allocator_reallocate) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
168 char *test = cxCallocDefault(8, 1);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
169 memcpy(test, "Test", 5);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
170 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
171 int ret = cxReallocateDefault(&test, 16);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
172 CX_TEST_ASSERT(ret == 0);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
173 CX_TEST_ASSERT(test != NULL);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
174 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
175 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
176 cxFreeDefault(test);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
177 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
178
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
179 CX_TEST(test_allocator_reallocate_low_level) {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
180 void *test = calloc(8, 1);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
181 memcpy(test, "Test", 5);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
182 CX_TEST_DO {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
183 int ret = cx_reallocate(&test, 16);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
184 CX_TEST_ASSERT(ret == 0);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
185 CX_TEST_ASSERT(test != NULL);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
186 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
187 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
188 free(test);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
189 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
190
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
191 CX_TEST(test_allocator_reallocatearray) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
192 char *test = cxCallocDefault(8, 1);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
193 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
194 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
195 int ret = cxReallocateArrayDefault(&test, 16, 2);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
196 CX_TEST_ASSERT(ret == 0);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
197 CX_TEST_ASSERT(test != NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
198 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
199 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
200 cxFreeDefault(test);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
201 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
202
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
203 CX_TEST(test_allocator_reallocatearray_overflow) {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
204 char *test = cxCallocDefault(8, 1);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
205 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
206 CX_TEST_DO {
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
207 int ret = cxReallocateArrayDefault(&test, SIZE_MAX/2, 4);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
208 CX_TEST_ASSERT(ret != 0);
1040
1ecf4dbbc60c add some more overflow treatment and make sure to set errno properly
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
209 CX_TEST_ASSERT(errno == EOVERFLOW);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
210 CX_TEST_ASSERT(test != NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
211 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
212 }
1319
aa1f580f8f59 add convenience macros for using the default allocator - relates to #669
Mike Becker <universe@uap-core.de>
parents: 1318
diff changeset
213 cxFreeDefault(test);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
214 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
215
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
216 CX_TEST(test_allocator_reallocatearray_low_level) {
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
217 char *test = calloc(8, 1);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
218 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
219 CX_TEST_DO {
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
220 int ret = cx_reallocatearray(&test, 16, 2);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
221 CX_TEST_ASSERT(ret == 0);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
222 CX_TEST_ASSERT(test != NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
223 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
224 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
225 free(test);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
226 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
227
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
228 CX_TEST(test_allocator_reallocatearray_low_level_overflow) {
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
229 char *test = calloc(8, 1);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
230 memcpy(test, "Test", 5);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
231 CX_TEST_DO {
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
232 int ret = cx_reallocatearray(&test, SIZE_MAX/2, 4);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
233 CX_TEST_ASSERT(ret != 0);
1040
1ecf4dbbc60c add some more overflow treatment and make sure to set errno properly
Mike Becker <universe@uap-core.de>
parents: 985
diff changeset
234 CX_TEST_ASSERT(errno == EOVERFLOW);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
235 CX_TEST_ASSERT(test != NULL);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
236 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
237 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
238 free(test);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
239 }
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
240
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
241 static void *test_allocator_mock_failing_realloc(
985
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 963
diff changeset
242 cx_attr_unused void *p,
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 963
diff changeset
243 cx_attr_unused void *d,
68754c7de906 major refactoring of attributes
Mike Becker <universe@uap-core.de>
parents: 963
diff changeset
244 cx_attr_unused size_t n
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
245 ) {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
246 return NULL;
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
247 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
248
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
249 CX_TEST(test_allocator_reallocate_fails) {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
250 // Mock an allocator that always returns NULL on realloc
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
251 cx_allocator_class mock_cl;
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
252 mock_cl.realloc = test_allocator_mock_failing_realloc;
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
253 CxAllocator mock = {&mock_cl, NULL};
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
254
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
255 void *test = calloc(8, 1);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
256 memcpy(test, "Test", 5);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
257 void *original = test;
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
258 CX_TEST_DO {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
259 int ret = cxReallocate(&mock, &test, 16);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
260 // non-zero return code because of the failure
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
261 CX_TEST_ASSERT(ret != 0);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
262 // the test pointer was not changed and still points to the same memory
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
263 CX_TEST_ASSERT(test == original);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
264 CX_TEST_ASSERT(0 == strcmp(test, "Test"));
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
265 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
266 free(test);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
267 }
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
268
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
269 CxTestSuite *cx_test_suite_allocator(void) {
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
270 CxTestSuite *suite = cx_test_suite_new("allocator");
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
271
1326
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
272 cx_test_register(suite, test_allocator_stdlib_malloc);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
273 cx_test_register(suite, test_allocator_stdlib_calloc);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
274 cx_test_register(suite, test_allocator_stdlib_realloc);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
275 cx_test_register(suite, test_allocator_stdlib_reallocarray);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
276 cx_test_register(suite, test_allocator_stdlib_reallocarray_overflow);
9bf5945d91ab fix test coverage for cxStdlibAllocator
Mike Becker <universe@uap-core.de>
parents: 1319
diff changeset
277 cx_test_register(suite, test_allocator_stdlib_free);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
278 cx_test_register(suite, test_allocator_default_malloc);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
279 cx_test_register(suite, test_allocator_default_calloc);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
280 cx_test_register(suite, test_allocator_default_realloc);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
281 cx_test_register(suite, test_allocator_default_reallocarray);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
282 cx_test_register(suite, test_allocator_default_reallocarray_overflow);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
283 cx_test_register(suite, test_allocator_default_free);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
284 cx_test_register(suite, test_allocator_reallocate);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
285 cx_test_register(suite, test_allocator_reallocate_fails);
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
286 cx_test_register(suite, test_allocator_reallocate_low_level);
963
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
287 cx_test_register(suite, test_allocator_reallocatearray);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
288 cx_test_register(suite, test_allocator_reallocatearray_overflow);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
289 cx_test_register(suite, test_allocator_reallocatearray_low_level);
2f601274bbac add reallocarray() like functions - resolves #468
Mike Becker <universe@uap-core.de>
parents: 782
diff changeset
290 cx_test_register(suite, test_allocator_reallocatearray_low_level_overflow);
782
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
291
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
292 return suite;
74d777455e96 migrate allocator tests - relates to #342
Mike Becker <universe@uap-core.de>
parents:
diff changeset
293 }

mercurial