diff options
Diffstat (limited to 'Lib/test')
| -rw-r--r-- | Lib/test/test_exceptions.py | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/Lib/test/test_exceptions.py b/Lib/test/test_exceptions.py index 590935cb6c..3810108e35 100644 --- a/Lib/test/test_exceptions.py +++ b/Lib/test/test_exceptions.py @@ -2081,7 +2081,10 @@ class PEP626Tests(unittest.TestCase):              while t.tb_next:                  t = t.tb_next              frame = t.tb_frame -            self.assertEqual(frame.f_lineno-frame.f_code.co_firstlineno, line) +            if line is None: +                self.assertEqual(frame.f_lineno, line) +            else: +                self.assertEqual(frame.f_lineno-frame.f_code.co_firstlineno, line)      def test_lineno_after_raise_simple(self):          def simple(): @@ -2153,6 +2156,12 @@ class PEP626Tests(unittest.TestCase):                  pass          self.lineno_after_raise(after_with, 2) +    def test_missing_lineno_shows_as_none(self): +        def f(): +            1/0 +        self.lineno_after_raise(f, 1) +        f.__code__ = f.__code__.replace(co_linetable=b'\x04\x80\xff\x80') +        self.lineno_after_raise(f, None)  if __name__ == '__main__':      unittest.main() | 
