X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftimer%2Ftest%2Frun-ff.c;h=49c6e3744c1e3e9991e9fea9db09f5ac2f3decdd;hb=bd9a48e7ffca063e21d580e9e0d94b1691c03687;hp=c40e3b104d92744587af0ae74a6db9125933ab67;hpb=606cca7b0ed5236d1df1c4436ca79db6e3fd5321;p=ccan diff --git a/ccan/timer/test/run-ff.c b/ccan/timer/test/run-ff.c index c40e3b10..49c6e374 100644 --- a/ccan/timer/test/run-ff.c +++ b/ccan/timer/test/run-ff.c @@ -3,23 +3,27 @@ #include #include +static struct timeabs timeabs_from_usec(unsigned long long usec) +{ + struct timeabs epoch = { { 0, 0 } }; + return timeabs_add(epoch, time_from_usec(usec)); +} + int main(void) { struct timers timers; - struct timer t; - struct list_head expired; + struct timer t, *expired; /* This is how many tests you plan to run */ plan_tests(3); - timers_init(&timers, time_from_usec(1364726722653919ULL)); - timer_add(&timers, &t, time_from_usec(1364726722703919ULL)); - timers_expire(&timers, time_from_usec(1364726722653920ULL), &expired); - ok1(list_empty(&expired)); - timers_expire(&timers, time_from_usec(1364726725454187ULL), &expired); - ok1(!list_empty(&expired)); - ok1(list_top(&expired, struct timer, list) == &t); - + timers_init(&timers, timeabs_from_usec(1364726722653919ULL)); + timer_init(&t); + timer_add(&timers, &t, timeabs_from_usec(1364726722703919ULL)); + ok1(!timers_expire(&timers, timeabs_from_usec(1364726722653920ULL))); + expired = timers_expire(&timers, timeabs_from_usec(1364726725454187ULL)); + ok1(expired == &t); + ok1(!timers_expire(&timers, timeabs_from_usec(1364726725454187ULL))); timers_cleanup(&timers); /* This exits depending on whether all tests passed */