test_stackviewer.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. "Test stackviewer, coverage 63%."
  2. from idlelib import stackviewer
  3. import unittest
  4. from test.support import requires
  5. from tkinter import Tk
  6. from idlelib.tree import TreeNode, ScrolledCanvas
  7. import sys
  8. class StackBrowserTest(unittest.TestCase):
  9. @classmethod
  10. def setUpClass(cls):
  11. svs = stackviewer.sys
  12. try:
  13. abc
  14. except NameError:
  15. svs.last_type, svs.last_value, svs.last_traceback = (
  16. sys.exc_info())
  17. requires('gui')
  18. cls.root = Tk()
  19. cls.root.withdraw()
  20. @classmethod
  21. def tearDownClass(cls):
  22. svs = stackviewer.sys
  23. del svs.last_traceback, svs.last_type, svs.last_value
  24. cls.root.update_idletasks()
  25. ## for id in cls.root.tk.call('after', 'info'):
  26. ## cls.root.after_cancel(id) # Need for EditorWindow.
  27. cls.root.destroy()
  28. del cls.root
  29. def test_init(self):
  30. sb = stackviewer.StackBrowser(self.root)
  31. isi = self.assertIsInstance
  32. isi(stackviewer.sc, ScrolledCanvas)
  33. isi(stackviewer.item, stackviewer.StackTreeItem)
  34. isi(stackviewer.node, TreeNode)
  35. if __name__ == '__main__':
  36. unittest.main(verbosity=2)