SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause copyrights: - Copyright (C) 2020 embedded brains GmbH & Co. KG enabled-by: true links: [] test-actions: - action-brief: | Run the event constant and number test for all 32 event constants. action-code: | unsigned int i; for ( i = 0; i < 32; ++i ) { ${event-constant:/test-run}( events[ i ], i ); T_step( i ); /* ${.:/step:32} */ } checks: [] links: [] - action-brief: | Check that ${../if/pending-events:/name} is a constant expression which evaluates to a value of zero. action-code: | RTEMS_STATIC_ASSERT( RTEMS_PENDING_EVENTS == 0, PENDING_EVENTS ); checks: [] links: - role: validation uid: ../req/pending-events - action-brief: | Calculate the value of a bitwise or of all 32 event constants. action-code: | rtems_event_set all; int i; all = 0; for ( i = 0; i < 32; ++i ) { all |= events[ i ]; } checks: - brief: | Check that the value is equal to RTEMS_ALL_EVENTS. code: | T_step_eq_u32( ${.:/step}, all, RTEMS_ALL_EVENTS ); links: - role: validation uid: ../req/all-events links: [] - action-brief: | Validate the Event Manager directive options. action-code: | /* No action */ checks: - brief: | Check that RTEMS_EVENT_ALL is equal to zero. code: | T_step_eq_u32( ${.:/step}, RTEMS_EVENT_ALL, 0 ); links: [] - brief: | Check that RTEMS_EVENT_ANY is a power of two. code: | T_step_ne_u32( ${.:/step}, RTEMS_EVENT_ANY, 0 ); T_step_eq_u32( ${.:/step}, RTEMS_EVENT_ANY & ( RTEMS_EVENT_ANY - 1 ), 0 ); links: [] links: [] test-brief: Tests the Event Manager API. test-context: [] test-context-support: null test-description: null test-header: null test-includes: - rtems.h test-local-includes: - tr-event-constant.h test-setup: null test-stop: null test-support: | static const rtems_event_set events[] = { RTEMS_EVENT_0, RTEMS_EVENT_1, RTEMS_EVENT_2, RTEMS_EVENT_3, RTEMS_EVENT_4, RTEMS_EVENT_5, RTEMS_EVENT_6, RTEMS_EVENT_7, RTEMS_EVENT_8, RTEMS_EVENT_9, RTEMS_EVENT_10, RTEMS_EVENT_11, RTEMS_EVENT_12, RTEMS_EVENT_13, RTEMS_EVENT_14, RTEMS_EVENT_15, RTEMS_EVENT_16, RTEMS_EVENT_17, RTEMS_EVENT_18, RTEMS_EVENT_19, RTEMS_EVENT_20, RTEMS_EVENT_21, RTEMS_EVENT_22, RTEMS_EVENT_23, RTEMS_EVENT_24, RTEMS_EVENT_25, RTEMS_EVENT_26, RTEMS_EVENT_27, RTEMS_EVENT_28, RTEMS_EVENT_29, RTEMS_EVENT_30, RTEMS_EVENT_31 }; test-target: testsuites/validation/tc-events.c test-teardown: null type: test-case