diff options
Diffstat (limited to 'Lib/idlelib/idle_test/test_stackviewer.py')
-rw-r--r-- | Lib/idlelib/idle_test/test_stackviewer.py | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/Lib/idlelib/idle_test/test_stackviewer.py b/Lib/idlelib/idle_test/test_stackviewer.py index 3b8486a..98f53f9 100644 --- a/Lib/idlelib/idle_test/test_stackviewer.py +++ b/Lib/idlelib/idle_test/test_stackviewer.py @@ -1,21 +1,34 @@ -"Test stackviewer, coverage 19%." +"Test stackviewer, coverage 63%." from idlelib import stackviewer import unittest from test.support import requires from tkinter import Tk +from idlelib.tree import TreeNode, ScrolledCanvas +import sys -class Test(unittest.TestCase): + +class StackBrowserTest(unittest.TestCase): @classmethod def setUpClass(cls): + svs = stackviewer.sys + try: + abc + except NameError: + svs.last_type, svs.last_value, svs.last_traceback = ( + sys.exc_info()) + requires('gui') cls.root = Tk() cls.root.withdraw() @classmethod def tearDownClass(cls): + svs = stackviewer.sys + del svs.last_traceback, svs.last_type, svs.last_value + cls.root.update_idletasks() ## for id in cls.root.tk.call('after', 'info'): ## cls.root.after_cancel(id) # Need for EditorWindow. @@ -23,13 +36,11 @@ class Test(unittest.TestCase): del cls.root def test_init(self): - try: - zzz - except NameError as e: - ex = e -# Test runners suppress setting of sys.last_xyx, which stackviewer needs. -# Revise stackviewer so following works. -# stackviewer.StackBrowser(self.root, ex=exc) + sb = stackviewer.StackBrowser(self.root) + isi = self.assertIsInstance + isi(stackviewer.sc, ScrolledCanvas) + isi(stackviewer.item, stackviewer.StackTreeItem) + isi(stackviewer.node, TreeNode) if __name__ == '__main__': |