4 #include <listelem_alloc.h>
6 #include "test_macros.h"
14 main(int argc, char *argv[])
17 struct bogus *bogus1, *bogus2;
20 TEST_ASSERT(le = listelem_alloc_init(sizeof(struct bogus)));
21 bogus1 = listelem_malloc(le);
22 bogus1->str = "hello";
24 bogus2 = listelem_malloc(le);
25 bogus2->str = "goodbye";
27 TEST_EQUAL(bogus1->foobie, 42);
28 TEST_EQUAL(0, strcmp(bogus1->str, "hello"));
29 listelem_free(le, bogus1);
30 listelem_free(le, bogus2);
31 listelem_alloc_free(le);
33 TEST_ASSERT(le = listelem_alloc_init(sizeof(struct bogus)));
35 for (i = 0; i < 60; ++i)
36 bogus1 = listelem_malloc(le);
38 listelem_alloc_free(le);
41 struct bogus *bogus[600];
44 le = listelem_alloc_init(sizeof(struct bogus));
45 for (i = 0; i < 600; ++i)
46 bogus[i] = listelem_malloc_id(le, bogus_id + i);
48 for (i = 0; i < 600; ++i) {
49 TEST_EQUAL(bogus[i], listelem_get_item(le, bogus_id[i]));
51 for (i = 0; i < 600; ++i)
52 listelem_free(le, bogus[i]);
54 for (i = 0; i < 600; ++i)
55 bogus[i] = listelem_malloc_id(le, bogus_id + i);
57 for (i = 0; i < 600; ++i)
58 TEST_EQUAL(bogus[i], listelem_get_item(le, bogus_id[i]));
59 listelem_alloc_free(le);