From cb0997e3d97226aa0b14d38b8fd8d25fc6205f5b Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 27 Jul 2010 19:03:01 +0000 Subject: 2010-07-27 Joel Sherrill * sp11/sp11.scn, sp11/task1.c: Add test case for receiving all events no wait but the condition is only partially satisfied. --- testsuites/sptests/ChangeLog | 5 +++++ testsuites/sptests/sp11/sp11.scn | 2 ++ testsuites/sptests/sp11/task1.c | 24 ++++++++++++++++++++++-- 3 files changed, 29 insertions(+), 2 deletions(-) (limited to 'testsuites/sptests') diff --git a/testsuites/sptests/ChangeLog b/testsuites/sptests/ChangeLog index 9e255ea04f..a3f513db39 100644 --- a/testsuites/sptests/ChangeLog +++ b/testsuites/sptests/ChangeLog @@ -1,3 +1,8 @@ +2010-07-27 Joel Sherrill + + * sp11/sp11.scn, sp11/task1.c: Add test case for receiving all events + no wait but the condition is only partially satisfied. + 2010-07-26 Joel Sherrill * Makefile.am, configure.ac: Add test to extract a task blocked with diff --git a/testsuites/sptests/sp11/sp11.scn b/testsuites/sptests/sp11/sp11.scn index e367bb79e7..3ad9941195 100644 --- a/testsuites/sptests/sp11/sp11.scn +++ b/testsuites/sptests/sp11/sp11.scn @@ -71,4 +71,6 @@ TA1 - set time forwards (leave a timer) TA1 - RTEMS_EVENT_10 received TA1 - rtems_event_send - sending RTEMS_EVENT_11 to self in 100 ticks TA1 - rtems_event_send - sending RTEMS_EVENT_11 to self in 200 ticks +TA1 - rtems_event_send - send RTEMS_EVENT_4 to self +TA1 - rtems_event_receive - RTEMS_EVENT_4 AND RTEMS_EVENT_5 - UNSATISFIED *** END OF TEST 11 *** diff --git a/testsuites/sptests/sp11/task1.c b/testsuites/sptests/sp11/task1.c index 85f5307d86..d168478abb 100644 --- a/testsuites/sptests/sp11/task1.c +++ b/testsuites/sptests/sp11/task1.c @@ -361,8 +361,10 @@ rtems_test_pause(); RTEMS_NO_TIMEOUT, &eventout ); - if ( eventout ) printf( "ERROR -0x%08" PRIxrtems_event_set " events received\n", eventout ); - else puts( "TA1 - no events received" ); + if ( eventout ) + printf( "ERROR -0x%08" PRIxrtems_event_set " events received\n", eventout ); + else + puts( "TA1 - no events received" ); fatal_directive_status( status, RTEMS_UNSATISFIED, @@ -404,6 +406,24 @@ rtems_test_pause(); ); directive_failed( status, "rtems_timer_fire_after 200 ticks" ); + /***** *****/ + puts( "TA1 - rtems_event_send - send RTEMS_EVENT_4 to self" ); + status = rtems_event_send( RTEMS_SELF, RTEMS_EVENT_4 ); + directive_failed( status, "rtems_event_send" ); + + eventout = 0; + puts( + "TA1 - rtems_event_receive - RTEMS_EVENT_4 AND RTEMS_EVENT_5 - UNSATISFIED" + ); + status = rtems_event_receive( + RTEMS_EVENT_4 | RTEMS_EVENT_5, + RTEMS_NO_WAIT | RTEMS_EVENT_ALL, + RTEMS_NO_TIMEOUT, + &eventout + ); + fatal_directive_status( status, RTEMS_UNSATISFIED, "rtems_event_receive" ); + /***** *****/ + puts( "*** END OF TEST 11 ***" ); rtems_test_exit( 0 ); } -- cgit v1.2.3