summaryrefslogtreecommitdiff
path: root/lib/testtools/testtools/tests/test_testresult.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/testtools/testtools/tests/test_testresult.py')
-rw-r--r--lib/testtools/testtools/tests/test_testresult.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/testtools/testtools/tests/test_testresult.py b/lib/testtools/testtools/tests/test_testresult.py
index 69d2d6e2de..364fe51158 100644
--- a/lib/testtools/testtools/tests/test_testresult.py
+++ b/lib/testtools/testtools/tests/test_testresult.py
@@ -74,6 +74,13 @@ def make_failing_test():
return Test("failed")
+def make_mismatching_test():
+ class Test(TestCase):
+ def mismatch(self):
+ self.assertEqual(1, 2)
+ return Test("mismatch")
+
+
def make_unexpectedly_successful_test():
class Test(TestCase):
def succeeded(self):
@@ -416,6 +423,19 @@ class TestTestResult(TestCase):
'ZeroDivisionError: ...\n',
doctest.ELLIPSIS))
+ def test_traceback_formatting_with_stack_hidden_mismatch(self):
+ result = self.makeResult()
+ test = make_mismatching_test()
+ run_with_stack_hidden(True, test.run, result)
+ self.assertThat(
+ result.failures[0][1],
+ DocTestMatches(
+ 'Traceback (most recent call last):\n'
+ ' File "...testtools...tests...test_testresult.py", line ..., in mismatch\n'
+ ' self.assertEqual(1, 2)\n'
+ '...MismatchError: 1 != 2\n',
+ doctest.ELLIPSIS))
+
class TestMultiTestResult(TestCase):
"""Tests for 'MultiTestResult'."""