Skip to content
Permalink
683a3dc15a
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Latest commit 683a3dc Mar 23, 2018 History
1 contributor

Users who have contributed to this file

61 lines (48 sloc) 1.3 KB
#include <stdio.h>
#include <stdlib.h>
#include "./simple_unit_test/simple_unit_test.h"
#include "queue.h"
int test_create_queue() {
Queue* queue = create_queue();
CHECK(assert_not_null(queue));
CHECK(assert_equal_int(size(queue), 0));
CHECK(assert_true(is_empty(queue)));
destroy_queue(queue);
return 0;
}
int test_enqueue() {
Queue* queue = create_queue();
enqueue(queue, 1);
CHECK(assert_equal_int(size(queue), 1));
CHECK(assert_false(is_empty(queue)));
CHECK(assert_equal_int(front(queue), 1));
CHECK(assert_equal_int(back(queue), 1));
enqueue(queue, 2);
CHECK(assert_equal_int(size(queue), 2));
CHECK(assert_equal_int(front(queue), 1));
CHECK(assert_equal_int(back(queue), 2));
destroy_queue(queue);
return 0;
}
int test_dequeue() {
Queue* queue = create_queue();
enqueue(queue, 1);
dequeue(queue);
CHECK(assert_true(is_empty(queue)));
for (int i = 1; i <= 10; i++) {
enqueue(queue, i);
}
dequeue(queue);
dequeue(queue);
CHECK(assert_equal_int(size(queue), 8));
CHECK(assert_equal_int(front(queue), 3));
CHECK(assert_equal_int(back(queue), 10));
destroy_queue(queue);
return 0;
}
int main() {
run_test("test_create_queue", test_create_queue);
run_test("test_enqueue", test_enqueue);
run_test("test_dequeue", test_dequeue);
return 0;
}