Skip to content

Commit a009faa

Browse files
authored
Fix issue allure-framework#586: The dynamic suite and default suite are kept both in report Current: a case only has one parentSuite/suite/subSuite, and the dynamic has higher priority than the default
1 parent 50cb0ec commit a009faa

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

allure-pytest/src/listener.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,12 @@ def pytest_runtest_teardown(self, item):
114114
test_result = self.allure_logger.get_test(uuid)
115115
test_result.labels.extend([Label(name=name, value=value) for name, value in allure_labels(item)])
116116
test_result.labels.extend([Label(name=LabelType.TAG, value=value) for value in pytest_markers(item)])
117-
test_result.labels.extend([Label(name=name, value=value) for name, value in allure_suite_labels(item)])
117+
default_suite = [Label(name=name, value=value) for name, value in allure_suite_labels(item)]
118+
for default in default_suite[::-1]:
119+
for label in test_result.labels:
120+
if label.name == default.name:
121+
default_suite.remove(default)
122+
test_result.labels.extend(default_suite)
118123
test_result.labels.append(Label(name=LabelType.HOST, value=self._host))
119124
test_result.labels.append(Label(name=LabelType.THREAD, value=self._thread))
120125
test_result.labels.append(Label(name=LabelType.FRAMEWORK, value='pytest'))

0 commit comments

Comments
 (0)