From 1ff9f7f6317db42d820af9e966722797000fc34d Mon Sep 17 00:00:00 2001 From: Francisco Molina Date: Thu, 21 Nov 2019 09:57:53 +0100 Subject: [PATCH] tests/pthread_barrier: improve test script Add intermediate child.expect to avoid timeout on platforms where time between `start` and `done` is a little over 10s. --- tests/pthread_barrier/main.c | 3 ++- tests/pthread_barrier/tests/01-run.py | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/pthread_barrier/main.c b/tests/pthread_barrier/main.c index b7b6881088..b579fe7dbf 100644 --- a/tests/pthread_barrier/main.c +++ b/tests/pthread_barrier/main.c @@ -56,7 +56,8 @@ int main(void) { random_init(RAND_SEED); - puts("START\n"); + printf("NUM_CHILDREN: %d, NUM_ITERATIONS: %d\n", NUM_CHILDREN, + NUM_ITERATIONS); pthread_barrier_init(&barrier, NULL, NUM_CHILDREN); pthread_t children[NUM_CHILDREN]; diff --git a/tests/pthread_barrier/tests/01-run.py b/tests/pthread_barrier/tests/01-run.py index c5972d9afe..97c82a4e40 100755 --- a/tests/pthread_barrier/tests/01-run.py +++ b/tests/pthread_barrier/tests/01-run.py @@ -5,9 +5,13 @@ from testrunner import run def testfunc(child): - child.expect('START') - for i in range(4): + child.expect(r'NUM_CHILDREN: (\d+), NUM_ITERATIONS: (\d+)') + children = int(child.match.group(1)) + iterations = int(child.match.group(2)) + for i in range(children): child.expect('Start {}'.format(i + 1)) + for _ in range(children * iterations): + child.expect(r'Child \d sleeps for [" "\d]+ us.') child.expect('Done 2') child.expect('Done 1') child.expect('Done 3')