diff options
Diffstat (limited to 'spec/acfg/val/default.yml')
-rw-r--r-- | spec/acfg/val/default.yml | 216 |
1 files changed, 216 insertions, 0 deletions
diff --git a/spec/acfg/val/default.yml b/spec/acfg/val/default.yml new file mode 100644 index 00000000..d60f99cf --- /dev/null +++ b/spec/acfg/val/default.yml @@ -0,0 +1,216 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: [] +test-actions: +- action-brief: | + Try to create a barrier. + action-code: | + rtems_status_code sc; + rtems_id id; + + sc = rtems_barrier_create( + NAME, + RTEMS_DEFAULT_ATTRIBUTES, + 1, + &id + ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-barriers + links: [] +- action-brief: | + Try to construct a message queue. + action-code: | + rtems_message_queue_config config; + RTEMS_MESSAGE_QUEUE_BUFFER( 1 ) buffers[ 1 ]; + rtems_status_code sc; + rtems_id id; + + memset( &config, 0, sizeof( config ) ); + config.name = NAME; + config.maximum_pending_messages = 1; + config.maximum_message_size = 1; + config.storage_size = sizeof( buffers ); + config.storage_area = buffers; + config.attributes = RTEMS_DEFAULT_ATTRIBUTES; + + sc = rtems_message_queue_construct( &config, &id ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-message-queues + links: [] +- action-brief: | + Try to create a partition. + action-code: | + RTEMS_ALIGNED( RTEMS_PARTITION_ALIGNMENT ) uint8_t buffers[ 1 ][ 32 ]; + rtems_status_code sc; + rtems_id id; + + sc = rtems_partition_create( + NAME, + buffers, + sizeof( buffers ), + sizeof( buffers[ 0 ] ), + RTEMS_DEFAULT_ATTRIBUTES, + &id + ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-partitions + links: [] +- action-brief: | + Try to create a period. + action-code: | + rtems_status_code sc; + rtems_id id; + + sc = rtems_rate_monotonic_create( NAME, &id ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-periods + links: [] +- action-brief: | + Check that the processor maximum is one. + action-code: | + T_step_eq_u32( ${step}, rtems_scheduler_get_processor_maximum(), 1 ); + checks: [] + links: + - role: validation + uid: ../if/max-processors +- action-brief: | + Try to create a semaphore. + action-code: | + rtems_status_code sc; + rtems_id id; + + sc = rtems_semaphore_create( + NAME, + 0, + RTEMS_DEFAULT_ATTRIBUTES, + 0, + &id + ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-semaphores + links: [] +- action-brief: | + Try to construct a task. + action-code: | + rtems_status_code sc; + rtems_id id; + + sc = rtems_task_construct( &task_config, &id ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-tasks + links: [] +- action-brief: | + Try to create a timer. + action-code: | + rtems_status_code sc; + rtems_id id; + + sc = rtems_timer_create( NAME, &id ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-timers + links: [] +- action-brief: | + Try to create a user extension set. + action-code: | + rtems_extensions_table table; + rtems_status_code sc; + rtems_id id; + + memset( &table, 0, sizeof( table ) ); + sc = rtems_extension_create( NAME, &table, &id ); + checks: + - brief: | + Check that the returned status code is + ${/rtems/status/if/too-many:/name}. + code: | + T_step_rsc( ${step}, sc, RTEMS_TOO_MANY ); + links: + - role: validation + uid: ../if/max-user-extensions + links: [] +test-brief: | + Tests the default values of application configuration options. +test-context: [] +test-context-support: null +test-description: null +test-header: null +test-includes: +- rtems.h +- string.h +test-local-includes: +- tx-support.h +test-setup: null +test-stop: null +test-support: | + #define NAME rtems_build_name( 'N', 'A', 'M', 'E' ) + + RTEMS_ALIGNED(RTEMS_TASK_STORAGE_ALIGNMENT) static char task_storage[ + RTEMS_TASK_STORAGE_SIZE( + RTEMS_MINIMUM_STACK_SIZE, + RTEMS_DEFAULT_ATTRIBUTES + ) + ]; + + static const rtems_task_config task_config = { + .name = NAME, + .initial_priority = 1, + .storage_area = task_storage, + .storage_size = sizeof( task_storage ), + .maximum_thread_local_storage_size = 0, + .initial_modes = RTEMS_DEFAULT_MODES, + .attributes = RTEMS_DEFAULT_ATTRIBUTES + }; +test-target: testsuites/validation/tc-acfg-default.c +test-teardown: null +type: test-case |