summaryrefslogtreecommitdiff
path: root/rtemsspec/tests/spec-rtems/req/perf-runtime.yml
diff options
context:
space:
mode:
Diffstat (limited to 'rtemsspec/tests/spec-rtems/req/perf-runtime.yml')
-rw-r--r--rtemsspec/tests/spec-rtems/req/perf-runtime.yml59
1 files changed, 59 insertions, 0 deletions
diff --git a/rtemsspec/tests/spec-rtems/req/perf-runtime.yml b/rtemsspec/tests/spec-rtems/req/perf-runtime.yml
new file mode 100644
index 00000000..cae4ec31
--- /dev/null
+++ b/rtemsspec/tests/spec-rtems/req/perf-runtime.yml
@@ -0,0 +1,59 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2021 embedded brains GmbH & Co. KG
+enabled-by: true
+links:
+- role: requirement-refinement
+ uid: root
+- role: runtime-measurement-request
+ uid: ../val/perf
+non-functional-type: performance-runtime
+params: {}
+rationale: null
+references: []
+requirement-type: non-functional
+test-body:
+ brief: |
+ Automatically release the barrier.
+ code: |
+ ctx->status = rtems_barrier_wait( ctx->barrier_id, RTEMS_NO_TIMEOUT );
+ description: null
+test-cleanup:
+ brief: |
+ Delete the barrier and the worker.
+ code: |
+ rtems_status_code sc;
+
+ sc = rtems_barrier_delete( ctx->barrier_id );
+ T_rsc_success( sc );
+ description: null
+test-prepare:
+ brief: |
+ Create an automatic release barrier.
+ code: |
+ rtems_status_code sc;
+
+ sc = rtems_barrier_create(
+ OBJECT_NAME,
+ RTEMS_BARRIER_AUTOMATIC_RELEASE,
+ 1,
+ &ctx->barrier_id
+ );
+ T_rsc_success( sc );
+ description: null
+test-setup: null
+test-teardown:
+ brief: |
+ Discard samples interrupted by a clock tick.
+ code: |
+ T_quiet_rsc_success( ctx->status );
+
+ return tic == toc;
+ description: null
+text: |
+ While the execution environment is ${.:/environment}, while the barrier is an
+ automatic release barrier, while the measurement sample is the runtime of
+ exactly one successful call to ${../if/wait:/name} which automatically
+ releases the barrier, when exactly ${../val/perf:/params/sample-count}
+ samples are collected, the ${.:/limit-kind} shall be ${.:/limit-condition}.
+type: requirement