- Define test_utils_interactive_sync as DEFAULT_MODULE in Makefile.tests_common - For tests disabling autoinit, add test_utils_interactive_sync to main - Add DISABLE_MODULE += test_utils_interactive_sync for tests requiring sudo, `tests/shell`, `tests/minimal` and `tests/stdin` - Add shell_commands to tests/periph_wdt and tests/struct_tm_utility to pull `r` and `s` commands - Remove includes and usage in `tests/main.c` for tests that where already using test_utils_interactive_sync
Background
Tests for the same situation as thread_msg_block_w_queue, but without an initialized message queue for the main thread:
This test application checks for the behavior reported in https://github.com/RIOT-OS/RIOT/issues/100:
Usually, when a thread (here sender_thread) sends a message to another thread (here the main thread) whose message queue already holds a message, the message of sender_thread is copied into main's message queue and sender_thread is set to STATUS_PENDING. However, this should not happen if sender_thread is currently in STATUS_REPLY_BLOCKED mode, since it is in the middle of a different, blocking send.
In the aforementioned issue, it was reported that this undesired behavior was happening. It has been fixed since, and this test ensures that it doesn't re-occur again.
Expected result
The output should look as follows:
sender_thread start
main thread alive
If you see
ERROR: sender_thread should be blocking
something went wrong.