test_window.py 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. "Test window, coverage 47%."
  2. from idlelib import window
  3. import unittest
  4. from test.support import requires
  5. from tkinter import Tk
  6. class WindowListTest(unittest.TestCase):
  7. def test_init(self):
  8. wl = window.WindowList()
  9. self.assertEqual(wl.dict, {})
  10. self.assertEqual(wl.callbacks, [])
  11. # Further tests need mock Window.
  12. class ListedToplevelTest(unittest.TestCase):
  13. @classmethod
  14. def setUpClass(cls):
  15. window.registry = set()
  16. requires('gui')
  17. cls.root = Tk()
  18. cls.root.withdraw()
  19. @classmethod
  20. def tearDownClass(cls):
  21. window.registry = window.WindowList()
  22. cls.root.update_idletasks()
  23. ## for id in cls.root.tk.call('after', 'info'):
  24. ## cls.root.after_cancel(id) # Need for EditorWindow.
  25. cls.root.destroy()
  26. del cls.root
  27. def test_init(self):
  28. win = window.ListedToplevel(self.root)
  29. self.assertIn(win, window.registry)
  30. self.assertEqual(win.focused_widget, win)
  31. if __name__ == '__main__':
  32. unittest.main(verbosity=2)