[rtems-central commit] validation: Add test-ident substitution
Sebastian Huber
sebh at rtems.org
Fri Jul 21 07:13:10 UTC 2023
Module: rtems-central
Branch: master
Commit: 60b1d1a22f6fc1de26c3741d97737c07f66a797f
Changeset: http://git.rtems.org/rtems-central/commit/?id=60b1d1a22f6fc1de26c3741d97737c07f66a797f
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Thu Jul 6 17:15:58 2023 +0200
validation: Add test-ident substitution
---
rtemsspec/tests/spec-validation/action2.yml | 3 +++
rtemsspec/tests/test_validation.py | 3 +++
rtemsspec/validation.py | 7 +++++++
3 files changed, 13 insertions(+)
diff --git a/rtemsspec/tests/spec-validation/action2.yml b/rtemsspec/tests/spec-validation/action2.yml
index 19e3a234..5fce4619 100644
--- a/rtemsspec/tests/spec-validation/action2.yml
+++ b/rtemsspec/tests/spec-validation/action2.yml
@@ -179,7 +179,10 @@ test-setup:
test-stop: null
test-support: |
/* Support code */
+
${.:/test-context-type} *instance = &${.:/test-context-instance};
+
+ static const char ident[] = "${.:/test-ident}";
test-target: action2.c
test-teardown:
brief: |
diff --git a/rtemsspec/tests/test_validation.py b/rtemsspec/tests/test_validation.py
index c4872d49..74f23f91 100644
--- a/rtemsspec/tests/test_validation.py
+++ b/rtemsspec/tests/test_validation.py
@@ -2009,8 +2009,11 @@ static const char * const * const Action2_PreDesc[] = {
};
/* Support code */
+
Action2_Context *instance = &Action2_Instance;
+static const char ident[] = "Action2";
+
static void Action2_Pre_A_Prepare( Action2_Context *ctx, Action2_Pre_A state )
{
/* Pre A prologue. */
diff --git a/rtemsspec/validation.py b/rtemsspec/validation.py
index 363ce568..501aadd5 100644
--- a/rtemsspec/validation.py
+++ b/rtemsspec/validation.py
@@ -54,6 +54,10 @@ def _get_test_context_type(ctx: ItemGetValueContext) -> Any:
return f"{ctx.item.ident}_Context"
+def _get_test_ident(ctx: ItemGetValueContext) -> Any:
+ return ctx.item.ident
+
+
def _get_test_run(ctx: ItemGetValueContext) -> Any:
return f"{ctx.item.ident}_Run"
@@ -87,6 +91,8 @@ class _Mapper(ItemMapper):
_get_test_context_instance)
self.add_get_value("requirement/functional/action:/test-context-type",
_get_test_context_type)
+ self.add_get_value("requirement/functional/action:/test-ident",
+ _get_test_ident)
self.add_get_value("requirement/functional/action:/test-run",
_get_test_run)
self.add_get_value("runtime-measurement-test:/test-context-type",
@@ -96,6 +102,7 @@ class _Mapper(ItemMapper):
_get_test_context_instance)
self.add_get_value("test-case:/test-context-type",
_get_test_context_type)
+ self.add_get_value("test-case:/test-ident", _get_test_ident)
self.add_get_value("test-case:/test-run", _get_test_run)
self.add_get_value("test-suite:/test-suite-name", _get_test_suite_name)
for type_name in item.cache.items_by_type.keys():
More information about the vc
mailing list