Python traceback.FrameSummary() Examples
The following are 9
code examples of traceback.FrameSummary().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
traceback
, or try the search function
.
Example #1
Source File: error.py From pyrobud with MIT License | 6 votes |
def format_exception( exp: BaseException, tb: Optional[List[traceback.FrameSummary]] = None ) -> str: """Formats an exception traceback as a string, similar to the Python interpreter.""" if tb is None: tb = traceback.extract_tb(exp.__traceback__) # Replace absolute paths with relative paths cwd = os.getcwd() for frame in tb: if cwd in frame.filename: frame.filename = os.path.relpath(frame.filename) stack = "".join(traceback.format_list(tb)) msg = str(exp) if msg: msg = ": " + msg return f"Traceback (most recent call last):\n{stack}{type(exp).__name__}{msg}"
Example #2
Source File: thread_utils.py From dash-masternode-tool with MIT License | 5 votes |
def __init__(self, thread, calling_filename, calling_line_number, call_stack): self.thread = thread self.file_name = calling_filename self.line_number = calling_line_number self.call_stack: List[traceback.FrameSummary] = call_stack self.time = time.time()
Example #3
Source File: change_tracker.py From pylustrator with GNU General Public License v3.0 | 5 votes |
def getTextFromFile(block_id: str, stack_pos: traceback.FrameSummary): """ get the text which corresponds to the block_id (e.g. which figure) at the given position sepcified by stack_pos. """ block_id = lineToId(block_id) block = None if not stack_pos.filename.endswith('.py') and not stack_pos.filename.startswith("<ipython-input-"): raise RuntimeError("pylustrator must used in a python file (*.py) or a jupyter notebook; not a shell session.") with open(stack_pos.filename, 'r', encoding="utf-8") as fp1: for lineno, line in enumerate(fp1, start=1): # if we are currently reading a pylustrator block if block is not None: # add the line to the block block.add(line) # and see if we have found the end if line.strip().startswith("#% end:"): block.end() # if there is a new pylustrator block elif line.strip().startswith("#% start:"): block = Block(line) # if we are currently reading a block, continue with the next line if block is not None and not block.finished: continue if block is not None and block.finished: if block.id == block_id: return block block = None return []
Example #4
Source File: test_traceback.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_basics(self): linecache.clearcache() linecache.lazycache("f", globals()) f = traceback.FrameSummary("f", 1, "dummy") self.assertEqual(f, ("f", 1, "dummy", '"""Test cases for traceback module"""')) self.assertEqual(tuple(f), ("f", 1, "dummy", '"""Test cases for traceback module"""')) self.assertEqual(f, traceback.FrameSummary("f", 1, "dummy")) self.assertEqual(f, tuple(f)) # Since tuple.__eq__ doesn't support FrameSummary, the equality # operator fallbacks to FrameSummary.__eq__. self.assertEqual(tuple(f), f) self.assertIsNone(f.locals)
Example #5
Source File: test_traceback.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_lazy_lines(self): linecache.clearcache() f = traceback.FrameSummary("f", 1, "dummy", lookup_line=False) self.assertEqual(None, f._line) linecache.lazycache("f", globals()) self.assertEqual( '"""Test cases for traceback module"""', f.line)
Example #6
Source File: test_traceback.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_explicit_line(self): f = traceback.FrameSummary("f", 1, "dummy", line="line") self.assertEqual("line", f.line)
Example #7
Source File: test_traceback.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_basics(self): linecache.clearcache() linecache.lazycache("f", globals()) f = traceback.FrameSummary("f", 1, "dummy") self.assertEqual(f, ("f", 1, "dummy", '"""Test cases for traceback module"""')) self.assertEqual(tuple(f), ("f", 1, "dummy", '"""Test cases for traceback module"""')) self.assertEqual(f, traceback.FrameSummary("f", 1, "dummy")) self.assertEqual(f, tuple(f)) # Since tuple.__eq__ doesn't support FrameSummary, the equality # operator fallbacks to FrameSummary.__eq__. self.assertEqual(tuple(f), f) self.assertIsNone(f.locals)
Example #8
Source File: test_traceback.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_lazy_lines(self): linecache.clearcache() f = traceback.FrameSummary("f", 1, "dummy", lookup_line=False) self.assertEqual(None, f._line) linecache.lazycache("f", globals()) self.assertEqual( '"""Test cases for traceback module"""', f.line)
Example #9
Source File: test_traceback.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_explicit_line(self): f = traceback.FrameSummary("f", 1, "dummy", line="line") self.assertEqual("line", f.line)