From 58cd796348f8492c55d51ad2a0f7ece7927327c0 Mon Sep 17 00:00:00 2001 From: Kaspar Schleiser Date: Tue, 23 Feb 2016 14:45:14 +0100 Subject: [PATCH] tests: msg_try_receive: initial commit --- tests/msg_try_receive/Makefile | 4 +++ tests/msg_try_receive/main.c | 57 ++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 tests/msg_try_receive/Makefile create mode 100644 tests/msg_try_receive/main.c diff --git a/tests/msg_try_receive/Makefile b/tests/msg_try_receive/Makefile new file mode 100644 index 0000000000..d071f60e62 --- /dev/null +++ b/tests/msg_try_receive/Makefile @@ -0,0 +1,4 @@ +APPLICATION = msg_try_receive +include ../Makefile.tests_common + +include $(RIOTBASE)/Makefile.include diff --git a/tests/msg_try_receive/main.c b/tests/msg_try_receive/main.c new file mode 100644 index 0000000000..ce64d89b89 --- /dev/null +++ b/tests/msg_try_receive/main.c @@ -0,0 +1,57 @@ +/* + * Copyright (C) 2016 Kaspar Schleiser + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @ingroup tests + * @{ + * + * @file + * @brief msg_try_receive regression test application + * + * @author Kaspar Schleiser + * + * @} + */ + +#include +#include "thread.h" + +#include "msg.h" + +static kernel_pid_t _main_pid; + +static char stack[THREAD_STACKSIZE_MAIN]; +static void *second_thread(void *arg) +{ + (void) arg; + msg_t test; + puts("sending message..."); + msg_send(&test, _main_pid); + + return NULL; +} + +int main(void) +{ + printf("main starting\n"); + + _main_pid = thread_getpid(); + + thread_create(stack, + sizeof(stack), + THREAD_PRIORITY_MAIN - 1, + 0, + second_thread, + NULL, + "second_thread"); + + msg_t m; + printf("msg available: %i (should be 1!)\n", msg_try_receive(&m)); + + return 0; +}