X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fkern%2Fmsg_test.c;fp=bertos%2Fkern%2Fmsg_test.c;h=2cc34eeed467fe365a4b11c8a4139841ac83d75f;hb=e423e63cade618baf616a79b99aaab5de74ec76e;hp=638eeddd2ede6aea9cf6c1473144bb7e982591a1;hpb=fdc88a37b41df85d15b91ff1b5d12474e0d38bf3;p=bertos.git diff --git a/bertos/kern/msg_test.c b/bertos/kern/msg_test.c index 638eeddd..2cc34eee 100644 --- a/bertos/kern/msg_test.c +++ b/bertos/kern/msg_test.c @@ -51,10 +51,21 @@ #include #include -#include +#include + +#include #include +/* + * In the nightly build test, signals are disables, so this + * code won't compile. + * Since this code is used when we run "make check" it will be + * compiled and therefor tested there. + */ +#if CONFIG_KERN_SIGNALS + + // Global settings for the test. #define MAX_GLOBAL_COUNT 11040 #define TEST_TIME_OUT_MS 10 @@ -83,21 +94,22 @@ /* * These macros generate the code needed to create the test process functions. */ -#define RECV_PROC(num, sig) static void receiver_proc##num(void) \ - { \ - TestMsg *rec_msg; \ - for (;;) \ - { \ - sig_wait(sig); \ - kprintf("Proc[%d]..get message\n", num); \ - rec_msg = containerof(msg_get(&test_port##num), TestMsg, msg); \ - timer_delay(rec_msg->delay); \ - rec_msg->result += rec_msg->val; \ - kprintf("Proc[%d]..process message val[%d],delay[%d],res[%d]\n", num, rec_msg->val, rec_msg->delay, rec_msg->result); \ - msg_reply(&rec_msg->msg); \ - kprintf("Proc[%d] reply\n", num); \ - } \ - } +#define RECV_PROC(num, sig) \ +static void receiver_proc##num(void) \ +{ \ + TestMsg *rec_msg; \ + for (;;) \ + { \ + sig_wait(sig); \ + kprintf("Proc[%d]..get message\n", num); \ + rec_msg = containerof(msg_get(&test_port##num), TestMsg, msg); \ + timer_delay(rec_msg->delay); \ + rec_msg->result += rec_msg->val; \ + kprintf("Proc[%d]..process message val[%d],delay[%d],res[%d]\n", num, rec_msg->val, rec_msg->delay, rec_msg->result); \ + msg_reply(&rec_msg->msg); \ + kprintf("Proc[%d] reply\n", num); \ + } \ +} #define SEND_MSG(num) \ do { \ @@ -108,7 +120,7 @@ #define RECV_STACK(num) static cpu_stack_t receiver_stack##num[CONFIG_KERN_MINSTACKSIZE / sizeof(cpu_stack_t)] #define RECV_INIT_PROC(num) proc_new(receiver_proc##num, NULL, sizeof(receiver_stack##num), receiver_stack##num) -#define RECV_INIT_MSG(num, proc,sig) msg_initPort(&test_port##num, event_createSignal(proc, sig)) +#define RECV_INIT_MSG(num, proc, sig) msg_initPort(&test_port##num, event_createSignal(proc, sig)) // A test message with the parameters and a result. typedef struct @@ -268,3 +280,5 @@ int msg_testTearDown(void) } TEST_MAIN(msg); + +#endif /* CONFIG_KERN_SIGNALS */