diff options
Diffstat (limited to 'tests/test_vec.c')
| -rw-r--r-- | tests/test_vec.c | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/tests/test_vec.c b/tests/test_vec.c deleted file mode 100644 index 502335b..0000000 --- a/tests/test_vec.c +++ /dev/null @@ -1,88 +0,0 @@ -#include "../include/testing.h" -#include "../include/vec.h" - -typedef struct { - i32 x; - i32 y; -} Point; - -i32 test_int_vec() { - Arena perm = Arena_new(128e3); - - Vec vec = Vec_new(&perm, i32, 2); - i32 *tmp = new(&perm, i32, 1); - *tmp = 1; - Vec_push(&perm, &vec, tmp); - *tmp = 2; - Vec_push(&perm, &vec, tmp); - - t_assert_equal(*Vec_get(vec, i32, 0), 1); - t_assert_equal(*Vec_get(vec, i32, 1), 2); - t_assert_equal(vec.cap, 2); - - *tmp = 3; - Vec_push(&perm, &vec, tmp); - - t_assert_equal(*Vec_get(vec, i32, 2), 3); - t_assert_equal(vec.cap, 4); - - return 0; -} - -i32 test_vec_push() { - Arena perm = Arena_new(128e3); - Vec v = Vec_new(&perm, i32, 4); - - i32 vals[] = {10, 20, 30}; - for (i32 i = 0; i < 3; i++) Vec_push(&perm, &v, &vals[i]); - - t_assert_equal(v.len, 3); - t_assert_equal(*Vec_get(v, i32, 0), 10); - t_assert_equal(*Vec_get(v, i32, 1), 20); - t_assert_equal(*Vec_get(v, i32, 2), 30); - t_assert_equal(Arena_get_used(perm), v.cap * sizeof(i32)); - - return 0; -} - -i32 test_vec_grow() { - Arena perm = Arena_new(128e3); - Vec v = Vec_new(&perm, i32, 2); - - for (i32 i = 0; i < 8; i++) Vec_push(&perm, &v, &i); - - t_assert_equal(v.len, 8); - t_assert_equal(Arena_get_used(perm), sizeof(i32) * (2 + 4 + 8)); - - return 0; -} - -i32 test_vec_struct() { - Arena perm = Arena_new(128e3); - Vec v = Vec_new(&perm, Point, 2); - - Point p1 = {1, 2}, p2 = {3, 4}; - Vec_push(&perm, &v, &p1); - Vec_push(&perm, &v, &p2); - - Point *r0 = Vec_get(v, Point, 0); - Point *r1 = Vec_get(v, Point, 1); - t_assert_equal(r0->x, 1); - t_assert_equal(r0->y, 2); - t_assert_equal(r1->x, 3); - t_assert_equal(r1->y, 4); - t_assert_equal(Arena_get_used(perm), 16); - - return 0; -} - -i32 test_vec_initial_len() { - Arena perm = Arena_new(128e3); - Vec v = Vec_new(&perm, i32, 4); - - t_assert_equal(v.len, 0); - t_assert_equal(v.cap, 4); - t_assert_equal(Arena_get_used(perm), 16); - - return 0; -} |
