1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/tests/thread_msg_block_w_queue
Francisco Molina 0996fb87fd tests: insufficient mem. atmega328p based boards
- When using test_interactive_sync_utils, stdin and many more
  prints/puts are included. These all go into .bss/.data which
  quickly fills up RAM.
2019-11-27 15:07:43 +01:00
..
tests tests: move testrunner import up 2018-08-13 14:11:24 +02:00
main.c tests: add test_utils_interactive_sync when possible 2019-11-27 15:07:42 +01:00
Makefile tests: BOARD_INSUFFICIENT_MEMORY -> Makefile.ci 2019-10-17 15:11:59 +02:00
Makefile.ci tests: insufficient mem. atmega328p based boards 2019-11-27 15:07:43 +01:00
README.md tests/thread_msg_block_w_queue: add README & pexpect script, extend comments 2017-03-07 09:04:56 -08:00

Background

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.