#include #include #include "../list.h" int cmp_int(const int *ia, const int *ib) { return *ia - *ib; } int main() { printf("------------\n"); printf("Testing List\n"); printf("------------\n"); List list; printf("testing ini\n"); list_ini(&list); int a = 0; int b = 1; int c = 2; int d = 2; int e = 3; printf("testing add\n"); assert(list_add(&list, &a, &a, &cmp_int, NULL)); assert(list_add(&list, &b, &b, &cmp_int, NULL)); assert(list_add(&list, &c, &c, &cmp_int, NULL)); assert(!list_add(&list, &d, &d, &cmp_int, NULL)); printf("testing get\n"); assert(list_get(&list, &a, &cmp_int, NULL) == &a); assert(list_get(&list, &b, &cmp_int, NULL) == &b); assert(list_get(&list, &c, &cmp_int, NULL) == &c); assert(list_get(&list, &d, &cmp_int, NULL) == &c); assert(list_get(&list, &e, &cmp_int, NULL) == NULL); printf("testing del\n"); assert(list_del(&list, &a, &cmp_int, NULL, NULL, NULL)); assert(list_get(&list, &a, &cmp_int, NULL) == NULL); printf("testing clr\n"); list_clr(&list, NULL, NULL, NULL); assert(list_get(&list, &b, &cmp_int, NULL) == NULL); }