Skip to content

Commit fc27107

Browse files
committed
Tests: RTOS: RtosTimer: Fix tests for NRF51_DK board
Additional delay is needed to prevent random failures when waiting for a semaphore.
1 parent 7b2e9b1 commit fc27107

File tree

1 file changed

+12
-12
lines changed
  • TESTS/mbedmicro-rtos-mbed/rtostimer

1 file changed

+12
-12
lines changed

TESTS/mbedmicro-rtos-mbed/rtostimer/main.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ using namespace utest::v1;
2323

2424
#define TEST_DELAY_MS 50
2525
#define TEST_DELAY2_MS 30
26-
#define TEST_DELAY_MS_DELTA 1
26+
#define TEST_DELAY_MS_DELTA 5
2727
#define TEST_RESTART_DELAY_MS 10
2828

2929
#if TEST_RESTART_DELAY_MS >= TEST_DELAY_MS
@@ -71,12 +71,12 @@ void test_oneshot_not_restarted()
7171
t.start();
7272
TEST_ASSERT_EQUAL(osOK, stat);
7373

74-
int32_t slots = sem.wait(TEST_DELAY_MS + 1);
74+
int32_t slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
7575
t.stop();
7676
TEST_ASSERT_EQUAL(1, slots);
7777
TEST_ASSERT_INT_WITHIN(TEST_DELAY_MS_DELTA * 1000, TEST_DELAY_MS * 1000, t.read_us());
7878

79-
slots = sem.wait(TEST_DELAY_MS + 1);
79+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
8080
TEST_ASSERT_EQUAL(0, slots);
8181

8282
stat = timer.stop();
@@ -105,20 +105,20 @@ void test_periodic_repeats()
105105
t.start();
106106
TEST_ASSERT_EQUAL(osOK, stat);
107107

108-
int32_t slots = sem.wait(TEST_DELAY_MS + 1);
108+
int32_t slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
109109
int t1 = t.read_us();
110110
TEST_ASSERT_EQUAL(1, slots);
111111
TEST_ASSERT_INT_WITHIN(TEST_DELAY_MS_DELTA * 1000, TEST_DELAY_MS * 1000, t1);
112112

113-
slots = sem.wait(TEST_DELAY_MS + 1);
113+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
114114
t.stop();
115115
TEST_ASSERT_EQUAL(1, slots);
116116
TEST_ASSERT_INT_WITHIN(TEST_DELAY_MS_DELTA * 1000, TEST_DELAY_MS * 1000, t.read_us() - t1);
117117

118118
stat = timer.stop();
119119
TEST_ASSERT_EQUAL(osOK, stat);
120120

121-
slots = sem.wait(TEST_DELAY_MS + 1);
121+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
122122
TEST_ASSERT_EQUAL(0, slots);
123123

124124
stat = timer.stop();
@@ -153,7 +153,7 @@ void test_restart()
153153
stat = timer.start(TEST_DELAY_MS);
154154
TEST_ASSERT_EQUAL(osOK, stat);
155155

156-
slots = sem.wait(TEST_DELAY_MS + 1);
156+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
157157
t.stop();
158158
TEST_ASSERT_EQUAL(1, slots);
159159
TEST_ASSERT_INT_WITHIN(TEST_DELAY_MS_DELTA * 1000, (TEST_DELAY_MS + TEST_RESTART_DELAY_MS) * 1000, t.read_us());
@@ -183,7 +183,7 @@ void test_start_again()
183183
stat = timer.start(TEST_DELAY_MS);
184184
TEST_ASSERT_EQUAL(osOK, stat);
185185

186-
int32_t slots = sem.wait(TEST_DELAY_MS + 1);
186+
int32_t slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
187187
TEST_ASSERT_EQUAL(1, slots);
188188

189189
stat = timer.stop();
@@ -192,7 +192,7 @@ void test_start_again()
192192
stat = timer.start(TEST_DELAY_MS);
193193
TEST_ASSERT_EQUAL(osOK, stat);
194194

195-
slots = sem.wait(TEST_DELAY_MS + 1);
195+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
196196
TEST_ASSERT_EQUAL(1, slots);
197197

198198
stat = timer.stop();
@@ -227,7 +227,7 @@ void test_restart_updates_delay()
227227
t.start();
228228
TEST_ASSERT_EQUAL(osOK, stat);
229229

230-
slots = sem.wait(TEST_DELAY2_MS + 1);
230+
slots = sem.wait(TEST_DELAY2_MS + TEST_DELAY_MS_DELTA);
231231
t.stop();
232232
TEST_ASSERT_EQUAL(1, slots);
233233
TEST_ASSERT_INT_WITHIN(TEST_DELAY_MS_DELTA * 1000, TEST_DELAY2_MS * 1000, t.read_us());
@@ -273,7 +273,7 @@ void test_stop()
273273
stat = timer.stop();
274274
TEST_ASSERT_EQUAL(osOK, stat);
275275

276-
slots = sem.wait(TEST_DELAY_MS + 1);
276+
slots = sem.wait(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
277277
TEST_ASSERT_EQUAL(0, slots);
278278

279279
stat = timer.stop();
@@ -337,7 +337,7 @@ void test_isr_calls_fail()
337337
Ticker ticker;
338338
ticker.attach(mbed::callback(timer_isr_call, (void const *) &timer), (float) TEST_DELAY_MS / 1000.0);
339339

340-
wait_ms(TEST_DELAY_MS + 1);
340+
wait_ms(TEST_DELAY_MS + TEST_DELAY_MS_DELTA);
341341
}
342342

343343
utest::v1::status_t test_setup(const size_t number_of_cases)

0 commit comments

Comments
 (0)