53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
'''Test idlelib.help_about.
|
|
|
|
Coverage:
|
|
'''
|
|
from idlelib import help_about
|
|
from idlelib import textview
|
|
from idlelib.idle_test.mock_idle import Func
|
|
from idlelib.idle_test.mock_tk import Mbox_func
|
|
import unittest
|
|
|
|
About = help_about.AboutDialog
|
|
class Dummy_about_dialog():
|
|
# Dummy class for testing file display functions.
|
|
idle_credits = About.ShowIDLECredits
|
|
idle_readme = About.ShowIDLEAbout
|
|
idle_news = About.ShowIDLENEWS
|
|
# Called by the above
|
|
display_file_text = About.display_file_text
|
|
|
|
|
|
class DisplayFileTest(unittest.TestCase):
|
|
dialog = Dummy_about_dialog()
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
cls.orig_error = textview.showerror
|
|
cls.orig_view = textview.view_text
|
|
cls.error = Mbox_func()
|
|
cls.view = Func()
|
|
textview.showerror = cls.error
|
|
textview.view_text = cls.view
|
|
cls.About = Dummy_about_dialog()
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
textview.showerror = cls.orig_error
|
|
textview.view_text = cls.orig_view
|
|
|
|
def test_file_isplay(self):
|
|
for handler in (self.dialog.idle_credits,
|
|
self.dialog.idle_readme,
|
|
self.dialog.idle_news):
|
|
self.error.message = ''
|
|
self.view.called = False
|
|
with self.subTest(handler=handler):
|
|
handler()
|
|
self.assertEqual(self.error.message, '')
|
|
self.assertEqual(self.view.called, True)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main(verbosity=2)
|