diff options
Diffstat (limited to 'simclist-1.5/regrtest/test1.c')
| -rw-r--r-- | simclist-1.5/regrtest/test1.c | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/simclist-1.5/regrtest/test1.c b/simclist-1.5/regrtest/test1.c deleted file mode 100644 index 3b93056..0000000 --- a/simclist-1.5/regrtest/test1.c +++ /dev/null @@ -1,120 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> -#include <time.h> -#include <assert.h> -#include "../simclist.h" - -#include "printlist.c" - -#define N 250 - -#undef NDEBUG - -int main() { - list_t tl, tl2, tl3; - unsigned int pos; - int el, el2, i; - list_hash_t lhash1, lhash2; - - - list_init(&tl); - assert(list_size(&tl) == 0); - - printf("1\n"); - - lhash1 = list_hash(&tl); - - /* attributes */ - list_attributes_copy(&tl, list_meter_int32_t, 1); - list_attributes_comparator(&tl, list_comparator_int32_t); - list_attributes_hash_computer(&tl, list_hashcomputer_int32_t); - - /* insertion */ - srandom(time(NULL)); - printf("Inserting at: "); - for (i = 0; i < N; i++) { - pos = random() % (list_size(&tl) + 1); - printf("%u ", pos); - list_insert_at(&tl, &i, pos); - } - printf("\nDone.\n"); - assert(list_size(&tl) == N); - - /* min/max */ - printf("2\n"); - assert(*(int *)list_get_max(&tl) == N-1); - printf("3\n"); - assert(*(int *)list_get_min(&tl) == 0); - printf("4\n"); - - /* incorrect deletion */ - assert(list_insert_at(&tl, &el, N+1) < 0); - printf("5\n"); - assert(list_delete_at(&tl, N) < 0); - printf("6\n"); - assert(list_delete_range(&tl, 0, N+1) < 0); - printf("7\n"); - assert(list_delete_range(&tl, N, N/2) < 0); - - /* hashes */ - printf("8\n"); - lhash2 = list_hash(&tl); - assert(lhash2 != lhash1); - - /* find and contains */ - printf("9\n"); - el = N-1; - assert(list_contains(&tl, &el)); - - /* sorting */ - printf("10\n"); - list_sort(&tl, 1); - - /* iteration sessions */ - el2 = el = -1; - list_iterator_start(&tl); - while (list_iterator_hasnext(&tl)) { - el2 = *(int *)list_iterator_next(&tl); - if (el > el2) - break; - el = el2; - } - list_iterator_stop(&tl); - assert(el2 == N-1); - - /* legal deletion */ - printf("11\n"); - list_delete_range(&tl, 0, N/2); - assert(list_size(&tl) == (N-1)/2); - assert(*(int *)list_get_at(&tl, 0) == (N/2 +1)); - - /* concatenation, and hashes */ - printf("12\n"); - lhash1 = list_hash(&tl); - assert(lhash1 != lhash2); - - printf("13\n"); - list_init(&tl2); /* tl2 empty */ - list_concat(&tl, &tl2, &tl3); - list_attributes_hash_computer(&tl3, list_hashcomputer_int32_t); - assert(list_hash(&tl) == list_hash(&tl3)); - - printf("14\n"); - list_destroy(&tl3); - list_concat(&tl2, &tl, &tl3); - list_attributes_hash_computer(&tl3, list_hashcomputer_int32_t); - assert(list_hash(&tl) == list_hash(&tl3)); - - printf("15\n"); - list_delete_range(&tl3, 1, list_size(&tl3)-2); - el = 123; - list_append(&tl3, &el); - assert(list_size(&tl3) == 3 && list_find(&tl3, &el) == (list_size(&tl3)-1)); - - - list_destroy(&tl); - - printf("==========\nAll tests passed.\n"); - return 0; -} - |
