diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-07-06 17:15:58 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-07-21 09:34:01 +0200 |
commit | 60b1d1a22f6fc1de26c3741d97737c07f66a797f (patch) | |
tree | 27e1f25f95b4e2f8dd6c1e2b1a26cb3aa5e75e3c /rtemsspec | |
parent | 6ea50c8684bd7f1284e412f97571e42168f626c7 (diff) |
validation: Add test-ident substitution
Diffstat (limited to 'rtemsspec')
-rw-r--r-- | rtemsspec/tests/spec-validation/action2.yml | 3 | ||||
-rw-r--r-- | rtemsspec/tests/test_validation.py | 3 | ||||
-rw-r--r-- | rtemsspec/validation.py | 7 |
3 files changed, 13 insertions, 0 deletions
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(): |