summaryrefslogtreecommitdiffstats
path: root/spec/req/rtems/options
diff options
context:
space:
mode:
Diffstat (limited to 'spec/req/rtems/options')
-rw-r--r--spec/req/rtems/options/bit-set.yml15
-rw-r--r--spec/req/rtems/options/default.yml14
-rw-r--r--spec/req/rtems/options/unique.yml14
-rw-r--r--spec/req/rtems/options/val/options.yml117
4 files changed, 0 insertions, 160 deletions
diff --git a/spec/req/rtems/options/bit-set.yml b/spec/req/rtems/options/bit-set.yml
deleted file mode 100644
index 21b3c84c..00000000
--- a/spec/req/rtems/options/bit-set.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-SPDX-License-Identifier: CC-BY-SA-4.0
-copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
-enabled-by: true
-links:
-- role: requirement-refinement
- uid: /if/rtems/options/group
-non-functional-type: interface
-rationale: null
-references: []
-requirement-type: non-functional
-text: |
- Each non-default directive option constant shall be a power of two
- representable as an integer of type ${/if/rtems/options/option}.
-type: requirement
diff --git a/spec/req/rtems/options/default.yml b/spec/req/rtems/options/default.yml
deleted file mode 100644
index 3f268b3f..00000000
--- a/spec/req/rtems/options/default.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-SPDX-License-Identifier: CC-BY-SA-4.0
-copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
-enabled-by: true
-links:
-- role: requirement-refinement
- uid: /if/rtems/options/group
-non-functional-type: interface
-rationale: null
-references: []
-requirement-type: non-functional
-text: |
- Each default directive option constant shall have a value of zero.
-type: requirement
diff --git a/spec/req/rtems/options/unique.yml b/spec/req/rtems/options/unique.yml
deleted file mode 100644
index 7dd37b28..00000000
--- a/spec/req/rtems/options/unique.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-SPDX-License-Identifier: CC-BY-SA-4.0
-copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
-enabled-by: true
-links:
-- role: requirement-refinement
- uid: /if/rtems/options/group
-non-functional-type: interface
-rationale: null
-references: []
-requirement-type: non-functional
-text: |
- The non-default directive option constants shall have unique values.
-type: requirement
diff --git a/spec/req/rtems/options/val/options.yml b/spec/req/rtems/options/val/options.yml
deleted file mode 100644
index 108d3023..00000000
--- a/spec/req/rtems/options/val/options.yml
+++ /dev/null
@@ -1,117 +0,0 @@
-SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
-copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
-enabled-by: true
-links: []
-test-actions:
-- action: |
- /* No action */
- checks:
- - check: |
- T_step_true( ${step}, IsPowerOfTwo( RTEMS_EVENT_ANY ) );
- description: |
- Check that RTEMS_EVENT_ANY is a power of two.
- links:
- - role: validation
- uid: ../bit-set
- - role: validation
- uid: /if/rtems/options/event-any
- - check: |
- T_step_true( ${step}, IsPowerOfTwo( RTEMS_NO_WAIT ) );
- description: |
- Check that RTEMS_NO_WAIT is a power of two.
- links:
- - role: validation
- uid: ../bit-set
- - role: validation
- uid: /if/rtems/options/no-wait
- description: |
- Validate the non-default option constants.
- links: []
-- action: |
- /* No action */
- checks:
- - check: |
- T_step_eq_u32( ${step}, RTEMS_DEFAULT_OPTIONS, 0 );
- description: |
- Check that RTEMS_DEFAULT_OPTIONS is equal to zero.
- links:
- - role: validation
- uid: ../default
- - role: validation
- uid: /if/rtems/options/default
- - check: |
- T_step_eq_u32( ${step}, RTEMS_EVENT_ALL, 0 );
- description: |
- Check that RTEMS_EVENT_ALL is equal to zero.
- links:
- - role: validation
- uid: ../default
- - role: validation
- uid: /if/rtems/options/event-all
- - check: |
- T_step_eq_u32( ${step}, RTEMS_WAIT, 0 );
- description: |
- Check that RTEMS_WAIT is equal to zero.
- links:
- - role: validation
- uid: ../default
- - role: validation
- uid: /if/rtems/options/wait
- description: |
- Validate the default option constants.
- links: []
-- action: |
- options = 0;
- options |= RTEMS_EVENT_ANY;
- options |= RTEMS_NO_WAIT;
- checks:
- - check: |
- T_step_eq_int( ${step}, PopCount( options ), 2 );
- description: |
- Check that the count of set bits in the calculated value is equal to the
- count of non-default option constants. Since each non-default option
- constant is a power of two, this proves that each constant has a unique
- value.
- links:
- - role: validation
- uid: ../unique
- - role: validation
- uid: /if/rtems/options/event-any
- - role: validation
- uid: /if/rtems/options/no-wait
- description: |
- Calculate the bitwise or of all non-default option constants.
- links: []
-test-brief: |
- Tests the option constants of the Classic API.
-test-description: null
-test-epilogue: null
-test-fixture: null
-test-header: null
-test-includes:
-- rtems.h
-test-local-includes: []
-test-prologue: |
- rtems_option options;
-test-support: |
- static bool IsPowerOfTwo( rtems_option option )
- {
- return option != 0 && ( option & ( option - 1 ) ) == 0;
- }
-
- static int PopCount( rtems_option options )
- {
- int count;
-
- count = 0;
-
- while ( options != 0 ) {
- ++count;
- options &= options - 1;
- }
-
- return count;
- }
-test-target: testsuites/validation/tc-options.c
-type: test-case