summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRan Benita <ran@unusedvar.com>2021-01-01 13:55:49 +0200
committerRan Benita <ran@unusedvar.com>2021-01-24 14:08:39 +0200
commit14d71b2c228c3ee92a1e7aa93a6ea64444f19697 (patch)
tree8b01b03d44f4ed6a5c624a85712739c6f2e94922 /src
parentd1fcd425a3da18ecec35a6028093ebff830edd46 (diff)
downloadpytest-14d71b2c228c3ee92a1e7aa93a6ea64444f19697.tar.gz
runner: make sure SetupState._finalizers is always set for a node in the stack
This makes the stack <-> _finalizers correspondence clearer.
Diffstat (limited to 'src')
-rw-r--r--src/_pytest/runner.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/_pytest/runner.py b/src/_pytest/runner.py
index 8102a6019..b25438c23 100644
--- a/src/_pytest/runner.py
+++ b/src/_pytest/runner.py
@@ -423,6 +423,7 @@ class SetupState:
needed_collectors = colitem.listchain()
for col in needed_collectors[len(self.stack) :]:
self.stack.append(col)
+ self._finalizers.setdefault(col, [])
try:
col.setup()
except TEST_OUTCOME as e:
@@ -444,7 +445,7 @@ class SetupState:
break
try:
colitem = self.stack.pop()
- finalizers = self._finalizers.pop(colitem, None)
+ finalizers = self._finalizers.pop(colitem)
inner_exc = None
while finalizers:
fin = finalizers.pop()