def test_format_list_full(self):
     extracted = stacktrace.extract_stack(
         get_frame(
             supplement=dict(
                 source_url='/foo/bar.pt',
                 line=42,
                 column=84,
                 expression='tal:define="foo view/foo"',
                 warnings=('watch out', 'pass auf'),
                 getInfo=lambda: 'read all about it'),
             info='I am the Walrus'
             )
         )
     formatted = stacktrace.format_list(extracted)
     self.assertIsInstance(formatted, list)
     for line in formatted:
         self.assertEndsWith(line, '\n')
     line = formatted[-1].split('\n')
     self.assertStartsWith(
         line[0], '  File "' + MY_FILE_NAME + '", line ')
     self.assertEndsWith(line[0], ', in get_frame')
     self.assertEqual('    return sys._getframe()', line[1])
     self.assertEqual('   - /foo/bar.pt', line[2])
     self.assertEqual('   - Line 42, Column 84', line[3])
     self.assertEqual(
         '   - Expression: tal:define="foo view/foo"', line[4])
     self.assertEqual(
         '   - Warning: watch out', line[5])
     self.assertEqual(
         '   - Warning: pass auf', line[6])
     self.assertEqual(
         'read all about it', line[7])
     self.assertEqual('   - I am the Walrus', line[8])
Esempio n. 2
0
 def test_format_list_simple(self):
     extracted = stacktrace.extract_stack(get_frame())
     formatted = stacktrace.format_list(extracted)
     self.assertIsInstance(formatted, list)
     for line in formatted:
         self.assertEndsWith(line, '\n')
     line = formatted[-1].split('\n')
     self.assertStartsWith(line[0], '  File "' + MY_FILE_NAME + '", line ')
     self.assertEndsWith(line[0], ', in get_frame')
     self.assertEqual('    return sys._getframe()', line[1])
 def test_format_list_simple(self):
     extracted = stacktrace.extract_stack(get_frame())
     formatted = stacktrace.format_list(extracted)
     self.assertIsInstance(formatted, list)
     for line in formatted:
         self.assertEndsWith(line, '\n')
     line = formatted[-1].split('\n')
     self.assertStartsWith(
         line[0], '  File "' + MY_FILE_NAME + '", line ')
     self.assertEndsWith(line[0], ', in get_frame')
     self.assertEqual('    return sys._getframe()', line[1])
 def test_format_list_extra_errors(self):
     extracted = stacktrace.extract_stack(get_frame(supplement=dict()))
     extracted[-1][-2]['warnings'] = object()  # This should never happen.
     original_stderr = sys.__stderr__
     stderr = sys.stderr = StringIO.StringIO()
     self.assertFalse(stacktrace.DEBUG_EXCEPTION_FORMATTER)
     stacktrace.DEBUG_EXCEPTION_FORMATTER = True
     try:
         formatted = stacktrace.format_list(extracted)
     finally:
         sys.stderr = original_stderr
         stacktrace.DEBUG_EXCEPTION_FORMATTER = False
     self.assertStartsWith(stderr.getvalue(), 'Traceback (most recent')
     self.assertEndsWith(formatted[-1], '    return sys._getframe()\n')
Esempio n. 5
0
 def test_format_list_extra_errors(self):
     extracted = stacktrace.extract_stack(get_frame(supplement=dict()))
     extracted[-1][-2]['warnings'] = object()  # This should never happen.
     original_stderr = sys.__stderr__
     stderr = sys.stderr = StringIO.StringIO()
     self.assertFalse(stacktrace.DEBUG_EXCEPTION_FORMATTER)
     stacktrace.DEBUG_EXCEPTION_FORMATTER = True
     try:
         formatted = stacktrace.format_list(extracted)
     finally:
         sys.stderr = original_stderr
         stacktrace.DEBUG_EXCEPTION_FORMATTER = False
     self.assertStartsWith(stderr.getvalue(), 'Traceback (most recent')
     self.assertEndsWith(formatted[-1], '    return sys._getframe()\n')
Esempio n. 6
0
 def test_format_list_full(self):
     extracted = stacktrace.extract_stack(
         get_frame(supplement=dict(source_url='/foo/bar.pt',
                                   line=42,
                                   column=84,
                                   expression='tal:define="foo view/foo"',
                                   warnings=('watch out', 'pass auf'),
                                   getInfo=lambda: 'read all about it'),
                   info='I am the Walrus'))
     formatted = stacktrace.format_list(extracted)
     self.assertIsInstance(formatted, list)
     for line in formatted:
         self.assertEndsWith(line, '\n')
     line = formatted[-1].split('\n')
     self.assertStartsWith(line[0], '  File "' + MY_FILE_NAME + '", line ')
     self.assertEndsWith(line[0], ', in get_frame')
     self.assertEqual('    return sys._getframe()', line[1])
     self.assertEqual('   - /foo/bar.pt', line[2])
     self.assertEqual('   - Line 42, Column 84', line[3])
     self.assertEqual('   - Expression: tal:define="foo view/foo"', line[4])
     self.assertEqual('   - Warning: watch out', line[5])
     self.assertEqual('   - Warning: pass auf', line[6])
     self.assertEqual('read all about it', line[7])
     self.assertEqual('   - I am the Walrus', line[8])