Fix prelude timer tests

This commit is contained in:
Thomas Andrejak 2017-05-16 08:24:30 +02:00
parent bb7bcec4fc
commit fe29c65e19
1 changed files with 10 additions and 9 deletions

View File

@ -1,11 +1,12 @@
--- ./tests/prelude-timer.c 2017-05-13 12:33:12.258834385 +0200
+++ ./tests/prelude-timer.c 2017-05-13 22:19:56.747125111 +0200
@@ -80,7 +80,7 @@
--- ./tests/prelude-timer.c 2016-09-15 08:49:10.810000884 +0200
+++ ./tests/prelude-timer.c 2017-05-16 07:18:40.763829280 +0200
@@ -31,7 +31,8 @@
test_timer_t *timer = data;
unsigned int elapsed = time(NULL) - timer->start_time;
unsigned int prev_timer_alive = timer_alive;
- for ( i = 0; i <= max_expire && timer_alive; i++ ) {
+ for ( i = 0; i <= max_expire + 1 && timer_alive; i++ ) {
ret = prelude_timer_wake_up();
printf("%u timer woke up, %u remaining, next wake up in %d seconds.\n", prev_timer_alive - timer_alive, timer_alive, ret);
- assert(elapsed == prelude_timer_get_expire(&timer->timer));
+ assert(elapsed >= prelude_timer_get_expire(&timer->timer));
+ assert(elapsed <= prelude_timer_get_expire(&timer->timer)+1);
prelude_timer_destroy(&timer->timer);
free(timer);