summaryrefslogtreecommitdiff
path: root/src/_pytest/unittest.py
diff options
context:
space:
mode:
authorDaniel Hahler <git@thequod.de>2019-07-20 07:04:38 +0200
committerDaniel Hahler <git@thequod.de>2019-07-20 07:11:49 +0200
commitd35d09f82dd2e968e138213ddce66e7afa2ed261 (patch)
tree9cc0eaff3370b61aad4e0e56a54d7ae41beb9ab0 /src/_pytest/unittest.py
parentc98e7aed940d4f3b36f537d66079b4dc3490e5d4 (diff)
downloadpytest-d35d09f82dd2e968e138213ddce66e7afa2ed261.tar.gz
unittest: handle outcomes.Exit
This is required for pytest to stop when using "quit" in pdb, and should get honored/handled in general.
Diffstat (limited to 'src/_pytest/unittest.py')
-rw-r--r--src/_pytest/unittest.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/_pytest/unittest.py b/src/_pytest/unittest.py
index 216266979..337490d13 100644
--- a/src/_pytest/unittest.py
+++ b/src/_pytest/unittest.py
@@ -6,6 +6,7 @@ import _pytest._code
import pytest
from _pytest.compat import getimfunc
from _pytest.config import hookimpl
+from _pytest.outcomes import exit
from _pytest.outcomes import fail
from _pytest.outcomes import skip
from _pytest.outcomes import xfail
@@ -153,6 +154,11 @@ class TestCaseFunction(Function):
self.__dict__.setdefault("_excinfo", []).append(excinfo)
def addError(self, testcase, rawexcinfo):
+ try:
+ if isinstance(rawexcinfo[1], exit.Exception):
+ exit(rawexcinfo[1].msg)
+ except TypeError:
+ pass
self._addexcinfo(rawexcinfo)
def addFailure(self, testcase, rawexcinfo):