test_statusbar.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. "Test statusbar, coverage 100%."
  2. from idlelib import statusbar
  3. import unittest
  4. from test.support import requires
  5. from tkinter import Tk
  6. class Test(unittest.TestCase):
  7. @classmethod
  8. def setUpClass(cls):
  9. requires('gui')
  10. cls.root = Tk()
  11. cls.root.withdraw()
  12. @classmethod
  13. def tearDownClass(cls):
  14. cls.root.update_idletasks()
  15. cls.root.destroy()
  16. del cls.root
  17. def test_init(self):
  18. bar = statusbar.MultiStatusBar(self.root)
  19. self.assertEqual(bar.labels, {})
  20. def test_set_label(self):
  21. bar = statusbar.MultiStatusBar(self.root)
  22. bar.set_label('left', text='sometext', width=10)
  23. self.assertIn('left', bar.labels)
  24. left = bar.labels['left']
  25. self.assertEqual(left['text'], 'sometext')
  26. self.assertEqual(left['width'], 10)
  27. bar.set_label('left', text='revised text')
  28. self.assertEqual(left['text'], 'revised text')
  29. bar.set_label('right', text='correct text')
  30. self.assertEqual(bar.labels['right']['text'], 'correct text')
  31. if __name__ == '__main__':
  32. unittest.main(verbosity=2)