diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-11-22 15:00:38 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-11-27 09:50:10 +0100 |
commit | 14c4f4151cbf3f6234e321c01fc6a11469f48c17 (patch) | |
tree | 04554d34fd2c0ed26c70f023abb9a8b93a96c6f4 | |
parent | spec: Fix enabled-by (diff) | |
download | rtems-central-14c4f4151cbf3f6234e321c01fc6a11469f48c17.tar.bz2 |
validation: Add nested test case remarks
-rw-r--r-- | rtemsspec/tests/test_validation.py | 18 | ||||
-rw-r--r-- | rtemsspec/validation.py | 17 |
2 files changed, 31 insertions, 4 deletions
diff --git a/rtemsspec/tests/test_validation.py b/rtemsspec/tests/test_validation.py index 74f23f91..539f6070 100644 --- a/rtemsspec/tests/test_validation.py +++ b/rtemsspec/tests/test_validation.py @@ -1468,6 +1468,11 @@ static void Tc7_Action_0( void ) static T_fixture_node Tc7_Node; +static T_remark Tc7_Remark = { + .next = NULL, + .remark = "Tc7" +}; + void Tc7_Run( void ) { T_push_fixture( &Tc7_Node, &T_empty_fixture ); @@ -1476,6 +1481,7 @@ void Tc7_Run( void ) Tc7_Action_0(); + T_add_remark( &Tc7_Remark ); T_pop_fixture(); } @@ -1521,6 +1527,11 @@ static void Tc8_Action_0( Tc8_Context *ctx ) static T_fixture_node Tc8_Node; +static T_remark Tc8_Remark = { + .next = NULL, + .remark = "Tc8" +}; + void Tc8_Run( void ) { Tc8_Context *ctx; @@ -1531,6 +1542,7 @@ void Tc8_Run( void ) Tc8_Action_0( ctx ); + T_add_remark( &Tc8_Remark ); T_pop_fixture(); } @@ -2363,6 +2375,11 @@ static void Action2_TestVariant( Action2_Context *ctx ) static T_fixture_node Action2_Node; +static T_remark Action2_Remark = { + .next = NULL, + .remark = "Action2" +}; + void Action2_Run( int *a, int b, int *c ) { Action2_Context *ctx; @@ -2406,6 +2423,7 @@ void Action2_Run( int *a, int b, int *c ) } } + T_add_remark( &Action2_Remark ); T_pop_fixture(); } diff --git a/rtemsspec/validation.py b/rtemsspec/validation.py index 501aadd5..a78dfabf 100644 --- a/rtemsspec/validation.py +++ b/rtemsspec/validation.py @@ -434,6 +434,17 @@ class _TestItem: for param in header["run-params"] ]) + def _add_fixture_node_and_remark(self, content: CContent, + epilogue: CContent) -> None: + content.add(f"static T_fixture_node {self.ident}_Node;") + content.add([ + f"static T_remark {self.ident}_Remark = {{", " .next = NULL,", + f" .remark = \"{self.ident}\"", "};" + ]) + epilogue.call_function(None, "T_add_remark", [f"&{self.ident}_Remark"]) + epilogue.gap = False + epilogue.add("T_pop_fixture();") + def _add_runner_prologue_and_epilogue(self, content: CContent, prologue: CContent, epilogue: CContent, @@ -450,10 +461,9 @@ class _TestItem: [f"\"{self.ident}\"", fixture]) epilogue.add("T_case_end();") else: - content.add(f"static T_fixture_node {self.ident}_Node;") prologue.call_function(result, "T_push_fixture", [f"&{self.ident}_Node", fixture]) - epilogue.add("T_pop_fixture();") + self._add_fixture_node_and_remark(content, epilogue) def generate(self, content: CContent, base_directory: str, test_case_to_suites: _CaseToSuite) -> None: @@ -764,7 +774,6 @@ class _ActionRequirementTestItem(_TestItem): if self._pre_co_skip: map_members_initialization.append("ctx->Map.skip = false;") if header: - content.add(f"static T_fixture_node {self.ident}_Node;") ret = "void" name = f"{self.ident}_Run" params = self._get_run_params(header) @@ -773,7 +782,7 @@ class _ActionRequirementTestItem(_TestItem): prologue.call_function("ctx =", "T_push_fixture", [f"&{self.ident}_Node", f"&{fixture}"]) prologue.append(map_members_initialization) - epilogue.add("T_pop_fixture();") + self._add_fixture_node_and_remark(content, epilogue) align = True else: with content.function_block( |