diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-08-17 17:32:35 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-08-17 17:55:18 +0200 |
commit | 2085243b4d063ee571313d53b1fd6c0de9dd5816 (patch) | |
tree | 7b367a5e81e8e3007e997c36f9c5c900897538bd /rtemsspec | |
parent | spec: Move TQ get owner to base context (diff) | |
download | rtems-central-2085243b4d063ee571313d53b1fd6c0de9dd5816.tar.bz2 |
validation: Add ${.:/test-context-type}
Add and use ${.:/test-context-type} and ${.:/test-context-instance}
substitutions.
Diffstat (limited to 'rtemsspec')
-rw-r--r-- | rtemsspec/tests/spec-validation/action2.yml | 1 | ||||
-rw-r--r-- | rtemsspec/tests/test_validation.py | 1 | ||||
-rw-r--r-- | rtemsspec/validation.py | 19 |
3 files changed, 20 insertions, 1 deletions
diff --git a/rtemsspec/tests/spec-validation/action2.yml b/rtemsspec/tests/spec-validation/action2.yml index 17b649ae..6cbdd39d 100644 --- a/rtemsspec/tests/spec-validation/action2.yml +++ b/rtemsspec/tests/spec-validation/action2.yml @@ -179,6 +179,7 @@ test-setup: test-stop: null test-support: | /* Support code */ + ${.:/test-context-type} *instance = &${.:/test-context-instance}; test-target: action2.c test-teardown: brief: | diff --git a/rtemsspec/tests/test_validation.py b/rtemsspec/tests/test_validation.py index e1b11575..b47aaca0 100644 --- a/rtemsspec/tests/test_validation.py +++ b/rtemsspec/tests/test_validation.py @@ -1946,6 +1946,7 @@ static const char * const * const Action2_PreDesc[] = { }; /* Support code */ +Action2_Context *instance = &Action2_Instance; static void Action2_Pre_A_Prepare( Action2_Context *ctx, Action2_Pre_A state ) { diff --git a/rtemsspec/validation.py b/rtemsspec/validation.py index bae2910f..88625784 100644 --- a/rtemsspec/validation.py +++ b/rtemsspec/validation.py @@ -43,8 +43,16 @@ ItemMap = Dict[str, Item] _STEPS = re.compile(r"^steps/([0-9]+)$") +def _get_test_context_instance(ctx: ItemGetValueContext) -> Any: + return f"{to_camel_case(ctx.item.uid[1:])}_Instance" + + +def _get_test_context_type(ctx: ItemGetValueContext) -> Any: + return f"{to_camel_case(ctx.item.uid[1:])}_Context" + + def _get_test_run(ctx: ItemGetValueContext) -> Any: - return f"{to_camel_case(ctx.item.uid[1:]).replace(' ', '')}_Run" + return f"{to_camel_case(ctx.item.uid[1:])}_Run" class _Mapper(ItemMapper): @@ -58,8 +66,17 @@ class _Mapper(ItemMapper): self.add_get_value("interface/group:/name", get_value_doxygen_group) self.add_get_value("interface/macro:/name", get_value_doxygen_function) self.add_get_value("interface/macro:/params/name", get_value_params) + self.add_get_value( + "requirement/functional/action:/test-context-instance", + _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-run", _get_test_run) + self.add_get_value("test-case:/test-context-instance", + _get_test_context_instance) + self.add_get_value("test-case:/test-context-type", + _get_test_context_type) self.add_get_value("test-case:/test-run", _get_test_run) @property |