From a9cd9433f0fe472bfea90b1dbecde4aa033b6485 Mon Sep 17 00:00:00 2001 From: Kaspar Schleiser Date: Tue, 30 Apr 2019 11:41:01 +0200 Subject: [PATCH] tests/posix_semaphore: unify and increase allowed test4 margin Previously, there was a very tight allowed margin (100us), then some special cases for platforms for which the test would otherwise fail, increasing the margin. This turned out to be a maintanance burden, as each slightly special board needed a PR adding the special case. This commit sets a quite large margin (1000us, 0.1% of total delay), which should be large enough to not trip over platform-induced timer inaccuracies, but still verify that the module is using timers correctly. (This is not a timer accuracy test.) --- tests/posix_semaphore/main.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/posix_semaphore/main.c b/tests/posix_semaphore/main.c index 764aeb6849..3447851327 100644 --- a/tests/posix_semaphore/main.c +++ b/tests/posix_semaphore/main.c @@ -236,16 +236,16 @@ void test3(void) sem_post(&s1); } -#ifdef BOARD_NATIVE -/* native can sometime take more time to respond as it is not real time */ -#define TEST4_TIMEOUT_EXCEEDED_MARGIN (300) -#elif CPU_FAM_NRF51 -/* nrf51 based boards needs a slightly higher margin value. Using 105us makes - test4 result more reliable. */ -#define TEST4_TIMEOUT_EXCEEDED_MARGIN (105) -#else -#define TEST4_TIMEOUT_EXCEEDED_MARGIN (100) -#endif /* BOARD_NATIVE */ +/* + * Allowed margin for waiting too long. + * + * Waiting too short is forbidden by POSIX, but is checked elsewhere. + * + * This allows waiting a little (0.1%) longer than exactly 1000000us. + * The value should be large enough to not trip over timer inaccuracies, but + * small enough to catch any fundamental problems. + */ +#define TEST4_TIMEOUT_EXCEEDED_MARGIN (1000) void test4(void) {