tests/test_allocator.c

Fri, 23 May 2025 11:44:44 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 23 May 2025 11:44:44 +0200
changeset 1326
9bf5945d91ab
parent 1319
aa1f580f8f59
permissions
-rw-r--r--

fix test coverage for cxStdlibAllocator

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