Add another timer test case for more coverage
This commit is contained in:
@@ -160,6 +160,47 @@ START_TEST (test_timers_remove_from_callback)
|
|||||||
|
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
|
START_TEST (test_timers_add_remove)
|
||||||
|
struct UCoreSettableClock clk;
|
||||||
|
struct TimerTest tt;
|
||||||
|
struct UCTimers timers;
|
||||||
|
struct UCTimer timer1;
|
||||||
|
struct UCTimer timer2;
|
||||||
|
struct UCTimer timer3;
|
||||||
|
struct UCTimer timer4;
|
||||||
|
struct timeval first;
|
||||||
|
|
||||||
|
common_init(&clk, &tt, &timers, &timer1);
|
||||||
|
memset(&timer2, 0, sizeof timer2);
|
||||||
|
memset(&timer3, 0, sizeof timer2);
|
||||||
|
memset(&timer4, 0, sizeof timer2);
|
||||||
|
|
||||||
|
timer1.callback = timer_test_cb_add;
|
||||||
|
timer2.callback = timer_test_cb_add;
|
||||||
|
timer3.callback = timer_test_cb_add;
|
||||||
|
timer4.callback = timer_test_cb_add;
|
||||||
|
|
||||||
|
uc_timers_add(&timers, &timer1, 10, 0);
|
||||||
|
uc_timers_add(&timers, &timer2, 5 , 0);
|
||||||
|
uc_timers_add(&timers, &timer3, 15, 1);
|
||||||
|
uc_timers_add(&timers, &timer4, 15, 1);
|
||||||
|
|
||||||
|
fail_if(uc_timers_first(&timers, &first) != 0);
|
||||||
|
fail_if(first.tv_sec != TEST_TIMER_START + 5);
|
||||||
|
fail_if(first.tv_usec != 0);
|
||||||
|
|
||||||
|
fail_if(uc_timers_count(&timers) != 4);
|
||||||
|
|
||||||
|
uc_timers_remove(&timers, &timer1);
|
||||||
|
uc_timers_remove(&timers, &timer2);
|
||||||
|
uc_timers_remove(&timers, &timer3);
|
||||||
|
uc_timers_remove(&timers, &timer4);
|
||||||
|
|
||||||
|
fail_if(uc_timers_count(&timers) != 0);
|
||||||
|
fail_if(uc_timers_first(&timers, &first) == 0);
|
||||||
|
|
||||||
|
END_TEST
|
||||||
|
|
||||||
|
|
||||||
Suite *timers_suite(void)
|
Suite *timers_suite(void)
|
||||||
{
|
{
|
||||||
@@ -168,6 +209,7 @@ Suite *timers_suite(void)
|
|||||||
tcase_add_test(tc, test_timers_simple);
|
tcase_add_test(tc, test_timers_simple);
|
||||||
tcase_add_test(tc, test_timers_add_from_callback);
|
tcase_add_test(tc, test_timers_add_from_callback);
|
||||||
tcase_add_test(tc, test_timers_remove_from_callback);
|
tcase_add_test(tc, test_timers_remove_from_callback);
|
||||||
|
tcase_add_test(tc, test_timers_add_remove);
|
||||||
|
|
||||||
suite_add_tcase(s, tc);
|
suite_add_tcase(s, tc);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user