From 9027399ddb11f9fc8d888066cb8f54db8a1f94d5 Mon Sep 17 00:00:00 2001 From: Fu Hanxi Date: Wed, 19 Feb 2025 15:35:41 +0100 Subject: [PATCH] fix: init dynamic generated markers when "add target as marker" --- pytest-embedded/pytest_embedded/plugin.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pytest-embedded/pytest_embedded/plugin.py b/pytest-embedded/pytest_embedded/plugin.py index b8b0def1..9421606b 100644 --- a/pytest-embedded/pytest_embedded/plugin.py +++ b/pytest-embedded/pytest_embedded/plugin.py @@ -1279,6 +1279,7 @@ def get_param(item: Function, key: str, default: t.Any = None) -> t.Any: def pytest_collection_modifyitems(self, config: Config, items: t.List[Function]): # ------ add marker based on target ------ if self.add_target_as_marker_with_amount or self.add_target_as_marker: + _new_markers: t.Set[str] = set() for item in items: item_target = self.get_param(item, 'target') if not item_target: @@ -1293,6 +1294,11 @@ def pytest_collection_modifyitems(self, config: Config, items: t.List[Function]) _marker = targets_to_marker(to_list(parse_multi_dut_args(count, item_target))) if self.add_target_as_marker: _marker = '-'.join(to_list(parse_multi_dut_args(count, item_target))) + logging.debug(f'Adding marker {item_target} to {item.name}') + if _marker not in _new_markers: + _new_markers.add(_marker) + logging.debug(f'Registering marker: {_marker}') + config.addinivalue_line('markers', _marker) item.add_marker(_marker)