diff --git a/scripts/pylib/twister/twisterlib/testplan.py b/scripts/pylib/twister/twisterlib/testplan.py index 042c0019c67..7742f01d43c 100755 --- a/scripts/pylib/twister/twisterlib/testplan.py +++ b/scripts/pylib/twister/twisterlib/testplan.py @@ -61,8 +61,6 @@ class Filters: TESTPLAN = 'testplan filter' # filters related to platform definition PLATFORM = 'Platform related filter' - # in case a test suite was quarantined. - QUARANTINE = 'Quarantine filter' # in case a test suite is skipped intentionally . SKIP = 'Skip filter' # in case of incompatibility between selected and allowed toolchains. @@ -1154,13 +1152,15 @@ class TestPlan: self.selected_platforms = set(p.platform.name for p in self.instances.values()) - filtered_instances = list( - filter(lambda item: item.status == TwisterStatus.FILTER, self.instances.values()) + filtered_and_skipped_instances = list( + filter( + lambda item: item.status in [TwisterStatus.FILTER, TwisterStatus.SKIP], + self.instances.values() + ) ) - for filtered_instance in filtered_instances: - change_skip_to_error_if_integration(self.options, filtered_instance) - - filtered_instance.add_missing_case_status(filtered_instance.status) + for inst in filtered_and_skipped_instances: + change_skip_to_error_if_integration(self.options, inst) + inst.add_missing_case_status(inst.status) def add_instances(self, instance_list): for instance in instance_list: @@ -1249,9 +1249,11 @@ def change_skip_to_error_if_integration(options, instance): filters = {t['type'] for t in instance.filters} ignore_filters ={Filters.CMD_LINE, Filters.SKIP, Filters.PLATFORM_KEY, Filters.TOOLCHAIN, Filters.MODULE, Filters.TESTPLAN, - Filters.QUARANTINE, Filters.ENVIRONMENT} + Filters.ENVIRONMENT} if filters.intersection(ignore_filters): return + if "quarantine" in instance.reason.lower(): + return instance.status = TwisterStatus.ERROR instance.reason += " but is one of the integration platforms" logger.debug( diff --git a/scripts/tests/twister/test_testplan.py b/scripts/tests/twister/test_testplan.py index 00218750390..57a9dda9aed 100644 --- a/scripts/tests/twister/test_testplan.py +++ b/scripts/tests/twister/test_testplan.py @@ -1745,7 +1745,7 @@ TESTDATA_14 = [ ('bad platform', 'dummy reason', [], 'dummy status', 'dummy reason'), ('good platform', 'quarantined', [], - TwisterStatus.ERROR, 'quarantined but is one of the integration platforms'), + 'dummy status', 'quarantined'), ('good platform', 'dummy reason', [{'type': 'command line filter'}], 'dummy status', 'dummy reason'), ('good platform', 'dummy reason', [{'type': 'Skip filter'}],