mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
Issue #27348: Merge exception formatting fix from 3.5 into 3.6
This commit is contained in:
commit
f3b0639417
4 changed files with 18 additions and 7 deletions
|
@ -19,7 +19,7 @@ test_frame = namedtuple('frame', ['f_code', 'f_globals', 'f_locals'])
|
|||
test_tb = namedtuple('tb', ['tb_frame', 'tb_lineno', 'tb_next'])
|
||||
|
||||
|
||||
class SyntaxTracebackCases(unittest.TestCase):
|
||||
class TracebackCases(unittest.TestCase):
|
||||
# For now, a very minimal set of tests. I want to be sure that
|
||||
# formatting of SyntaxErrors works based on changes for 2.1.
|
||||
|
||||
|
@ -106,10 +106,6 @@ class SyntaxTracebackCases(unittest.TestCase):
|
|||
str_name = '.'.join([X.__module__, X.__qualname__])
|
||||
self.assertEqual(err[0], "%s: %s\n" % (str_name, str_value))
|
||||
|
||||
def test_without_exception(self):
|
||||
err = traceback.format_exception_only(None, None)
|
||||
self.assertEqual(err, ['None\n'])
|
||||
|
||||
def test_encoded_file(self):
|
||||
# Test that tracebacks are correctly printed for encoded source files:
|
||||
# - correct line number (Issue2384)
|
||||
|
@ -587,6 +583,17 @@ class BaseExceptionReportingTests:
|
|||
msg = self.get_report(e).splitlines()
|
||||
self.assertEqual(msg[-2], ' ^')
|
||||
|
||||
def test_message_none(self):
|
||||
# A message that looks like "None" should not be treated specially
|
||||
err = self.get_report(Exception(None))
|
||||
self.assertIn('Exception: None\n', err)
|
||||
err = self.get_report(Exception('None'))
|
||||
self.assertIn('Exception: None\n', err)
|
||||
err = self.get_report(Exception())
|
||||
self.assertIn('Exception\n', err)
|
||||
err = self.get_report(Exception(''))
|
||||
self.assertIn('Exception\n', err)
|
||||
|
||||
|
||||
class PyExcReportingTests(BaseExceptionReportingTests, unittest.TestCase):
|
||||
#
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue