diff options
Diffstat (limited to 'src/test/mock_queue_tests.c')
-rw-r--r-- | src/test/mock_queue_tests.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/test/mock_queue_tests.c b/src/test/mock_queue_tests.c index 004444c..92d7cdf 100644 --- a/src/test/mock_queue_tests.c +++ b/src/test/mock_queue_tests.c @@ -1,19 +1,22 @@ #include "test/minunit.h" #include "test/mock_queue.h" +#include <stdbool.h> + mu_test mock_queue_int(); mu_test mock_queue_int_seq(); mu_test mock_queue_pop_multi(); mu_test mock_queue_clean_finish(); +mu_test mock_queue_push_multidata(); void mock_queue_tests() { - mock_queue_init(); mu_run_test("push and pop integer to mock queue", mock_queue_int); mu_run_test("push and pop integer sequence", mock_queue_int_seq); mu_run_test("pop multiple times with empty queue", mock_queue_pop_multi); mu_run_test("clean up mock queue", mock_queue_clean_finish); + mu_run_test("push and pop multiple data types", mock_queue_push_multidata); } @@ -99,3 +102,26 @@ mu_test mock_queue_clean_finish() return 0; } + + +mu_test mock_queue_push_multidata() +{ + mock_queue_cleanup(); + mu_assert_equal(mock_queue_len(), 0); + + mock_queue(const char *, "hello, world!"); + mock_queue(bool, true); + mock_queue(float, 4.20f); + + mu_assert_equal(mock_queue_len(), 3); + + mu_assert_streq(mock_front(const char *), "hello, world!"); + mock_pop(); + mu_assert_equal(mock_front(bool), true); + mock_pop(); + mu_assert_equal(mock_front(float), 4.20f); + mock_pop(); + + mu_assert_equal(mock_queue_len(), 0); + return 0; +} |