annotate tests/test-alloc.c @ 543:c32d7a98bde1

rpg: rpg -> mlk_rpg
author David Demelier <markand@malikania.fr>
date Sun, 05 Mar 2023 13:15:05 +0100
parents 773a082f0b91
children 0ff9f4a5c364
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 /*
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 * test-alloc.c -- test allocators
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 *
445
773a082f0b91 misc: update copyright years
David Demelier <markand@malikania.fr>
parents: 442
diff changeset
4 * Copyright (c) 2020-2023 David Demelier <markand@malikania.fr>
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 *
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 * Permission to use, copy, modify, and/or distribute this software for any
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 * purpose with or without fee is hereby granted, provided that the above
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 * copyright notice and this permission notice appear in all copies.
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 *
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 */
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
19 #include <stdlib.h>
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
20
431
8f59201dc76b core: cleanup hierarchy
David Demelier <markand@malikania.fr>
parents: 421
diff changeset
21 #include <mlk/core/alloc.h>
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
22
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
23 #include <dt.h>
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
24
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 struct point {
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 int x;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 int y;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 };
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
29
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
30 static struct {
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
31 size_t alloc_count;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
32 size_t free_count;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
33 } my_stats;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
34
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
35 static void *
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
36 my_alloc(size_t n)
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
37 {
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
38 my_stats.alloc_count += 1;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
39
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
40 return malloc(n);
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
41 }
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
42
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
43 static void *
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
44 my_realloc(void *ptr, size_t n)
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
45 {
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
46 (void)ptr;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
47 (void)n;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
48
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
49 return NULL;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
50 }
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
51
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
52 static void
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
53 my_free(void *ptr)
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
54 {
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
55 free(ptr);
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
56 my_stats.free_count += 1;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
57 }
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
58
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
59 static const struct mlk_alloc_funcs my_funcs = {
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
60 .alloc = my_alloc,
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
61 .realloc = my_realloc,
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
62 .free = my_free
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
63 };
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
64
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
65 static void
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
66 test_basics_array0(void)
269
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
67 {
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
68 struct point *points;
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
69
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
70 points = mlk_alloc_new0(2, sizeof (*points));
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
71 DT_EQ_INT(points[0].x, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
72 DT_EQ_INT(points[0].y, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
73 DT_EQ_INT(points[1].x, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
74 DT_EQ_INT(points[1].y, 0);
269
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
75
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
76 points[0].x = 10;
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
77 points[0].y = 20;
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
78 points[1].x = 30;
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
79 points[1].y = 40;
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
80
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
81 points = mlk_alloc_renew0(points, 4);
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
82
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
83 /* Make sure previous are still correct. */
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
84 DT_EQ_INT(points[0].x, 10);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
85 DT_EQ_INT(points[0].y, 20);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
86 DT_EQ_INT(points[1].x, 30);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
87 DT_EQ_INT(points[1].y, 40);
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
88
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
89 /* Now the new items must be zero'ed. */
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
90 DT_EQ_INT(points[2].x, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
91 DT_EQ_INT(points[2].y, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
92 DT_EQ_INT(points[3].x, 0);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
93 DT_EQ_INT(points[3].y, 0);
269
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
94 }
9b758eb84556 core: add alloc_rearray0 function
David Demelier <markand@malikania.fr>
parents: 228
diff changeset
95
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
96 static void
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
97 test_basics_pool_simple(void)
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
98 {
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
99 struct mlk_alloc_pool pool;
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
100 struct point *p, *data;
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
101 size_t total = 0;
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
102
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
103 mlk_alloc_pool_init(&pool, 16, sizeof (*p), NULL);
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
104
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
105 DT_EQ_UINT(pool.elemsize, sizeof (*p));
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
106 DT_EQ_UINT(pool.size, 0);
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
107 DT_EQ_UINT(pool.capacity, 16);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
108
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
109 /* Create until we reach the capacity. */
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
110 for (size_t i = 0; i < pool.capacity; ++i) {
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
111 p = mlk_alloc_pool_new(&pool);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
112 p->x = (int)i + 1;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
113 p->y = (int)i + 1;
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
114 total++;
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
115 }
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
116
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
117 DT_EQ_UINT(pool.size, pool.capacity);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
118
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
119 /* Verify values are correct. */
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
120 for (size_t i = 0; i < pool.size; ++i) {
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
121 p = ((struct point *)pool.data) + i;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
122
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
123 DT_EQ_INT(p->x, (int)i + 1);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
124 DT_EQ_INT(p->y, (int)i + 1);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
125 }
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
126
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
127 /* Now it should reallocate. */
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
128 p = mlk_alloc_pool_new(&pool);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
129 p->x = 9999;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
130 p->y = 9999;
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
131
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
132 DT_ASSERT(pool.capacity > pool.size);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
133
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
134 /* Shrink it! */
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
135 data = mlk_alloc_pool_shrink(&pool);
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
136
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
137 /* Verify values are correct again. */
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
138 for (size_t i = 0; i < total; ++i) {
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
139 DT_EQ_INT(data[i].x, (int)i + 1);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
140 DT_EQ_INT(data[i].y, (int)i + 1);
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
141 }
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
142
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
143 DT_EQ_PTR(pool.data, NULL);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
144 DT_EQ_UINT(pool.size, 0U);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
145 DT_EQ_UINT(pool.capacity, 0U);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
146 DT_EQ_UINT(pool.elemsize, 0U);
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
147 }
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
148
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
149 static void
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
150 test_basics_sdupf(void)
402
d3fa956cdaf0 core: add alloc_sdupf
David Demelier <markand@malikania.fr>
parents: 378
diff changeset
151 {
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
152 char *str = mlk_alloc_sdupf("Hello %s", "David");
402
d3fa956cdaf0 core: add alloc_sdupf
David Demelier <markand@malikania.fr>
parents: 378
diff changeset
153
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
154 DT_EQ_STR(str, "Hello David");
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
155 mlk_alloc_free(str);
402
d3fa956cdaf0 core: add alloc_sdupf
David Demelier <markand@malikania.fr>
parents: 378
diff changeset
156 }
d3fa956cdaf0 core: add alloc_sdupf
David Demelier <markand@malikania.fr>
parents: 378
diff changeset
157
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
158 static void
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
159 test_custom_count(void)
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
160 {
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
161 mlk_alloc_set(&my_funcs);
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
162 mlk_alloc_free(mlk_alloc_new(10, 1));
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
163 mlk_alloc_free(mlk_alloc_new0(20, 1));
438
25a56ca53ac2 core: update mlk-alloc module
David Demelier <markand@malikania.fr>
parents: 431
diff changeset
164 mlk_alloc_free(mlk_alloc_sdup("malikania"));
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
165
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
166 DT_EQ_UINT(my_stats.alloc_count, 3U);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
167 DT_EQ_UINT(my_stats.free_count, 3U);
404
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
168 }
7321511052f6 core: rework alloc module
David Demelier <markand@malikania.fr>
parents: 402
diff changeset
169
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
170 int
421
3edda1ce314c core: remove mlk_ prefix for now
David Demelier <markand@malikania.fr>
parents: 410
diff changeset
171 main(void)
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
172 {
442
9c3b3935f0aa core: rework allocations
David Demelier <markand@malikania.fr>
parents: 438
diff changeset
173 DT_RUN(test_basics_array0);
410
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
174 DT_RUN(test_basics_pool_simple);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
175 DT_RUN(test_basics_sdupf);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
176 DT_RUN(test_custom_count);
1bf7d6669f0a tests: switch to libdt
David Demelier <markand@malikania.fr>
parents: 408
diff changeset
177 DT_SUMMARY();
228
2734223d3daf core: add a alloc_pool module
David Demelier <markand@malikania.fr>
parents:
diff changeset
178 }