#include "wapp.h" #include "test_queue.h" wapp_persist Allocator arena = {}; wapp_persist I32Queue queue; TestFuncResult test_queue_push_back(void) { arena = wapp_mem_arena_allocator_init(MB(64)); b8 result = true; queue = wapp_queue_alloc(i32, &arena, 64); result = result && queue.items != NULL && wapp_queue_capacity(&queue) == 64 && wapp_queue_count(&queue) == 0; i32 n1 = 1; i32 n2 = 2; i32 n3 = 3; i32 n4 = 4; i32 n5 = 5; wapp_queue_push_back(i32, &queue, &n1); result = result && wapp_queue_count(&queue) == 1; wapp_queue_push_back(i32, &queue, &n2); result = result && wapp_queue_count(&queue) == 2; wapp_queue_push_back(i32, &queue, &n3); result = result && wapp_queue_count(&queue) == 3; wapp_queue_push_back(i32, &queue, &n4); result = result && wapp_queue_count(&queue) == 4; wapp_queue_push_back(i32, &queue, &n5); result = result && wapp_queue_count(&queue) == 5; return wapp_tester_result(result); } TestFuncResult test_queue_pop_front(void) { b8 result = true; i32 num; wapp_queue_pop_front(i32, &queue, &num); result = result && num == 1; wapp_queue_pop_front(i32, &queue, &num); result = result && num == 2; wapp_queue_pop_front(i32, &queue, &num); result = result && num == 3; wapp_queue_pop_front(i32, &queue, &num); result = result && num == 4; wapp_queue_pop_front(i32, &queue, &num); result = result && num == 5; wapp_mem_arena_allocator_destroy(&arena); return wapp_tester_result(result); }