Commit af0dce93 authored by Terry Jan Reedy's avatar Terry Jan Reedy

Issue #21982: Add minimal unittest for configDialog with 46% coverage.

parent 5d93f408
...@@ -23,9 +23,10 @@ from idlelib import macosxSupport ...@@ -23,9 +23,10 @@ from idlelib import macosxSupport
class ConfigDialog(Toplevel): class ConfigDialog(Toplevel):
def __init__(self,parent,title,_htest=False): def __init__(self, parent, title, _htest=False, _utest=False):
""" """
_htest - bool, change box location when running htest _htest - bool, change box location when running htest
_utest - bool, don't wait_window when running unittest
""" """
Toplevel.__init__(self, parent) Toplevel.__init__(self, parent)
self.wm_withdraw() self.wm_withdraw()
...@@ -68,8 +69,9 @@ class ConfigDialog(Toplevel): ...@@ -68,8 +69,9 @@ class ConfigDialog(Toplevel):
self.LoadConfigs() self.LoadConfigs()
self.AttachVarCallbacks() #avoid callbacks during LoadConfigs self.AttachVarCallbacks() #avoid callbacks during LoadConfigs
self.wm_deiconify() if not _utest:
self.wait_window() self.wm_deiconify()
self.wait_window()
def CreateWidgets(self): def CreateWidgets(self):
self.tabPages = TabbedPageSet(self, self.tabPages = TabbedPageSet(self,
...@@ -1156,5 +1158,9 @@ class ConfigDialog(Toplevel): ...@@ -1156,5 +1158,9 @@ class ConfigDialog(Toplevel):
pass pass
if __name__ == '__main__': if __name__ == '__main__':
import unittest
unittest.main('idlelib.idle_test.test_configdialog',
verbosity=2, exit=False)
from idlelib.idle_test.htest import run from idlelib.idle_test.htest import run
run(ConfigDialog) run(ConfigDialog)
'''Unittests for idlelib/configHandler.py
Coverage: 46% just by creating dialog. The other half is change code.
'''
import unittest
from test.test_support import requires
from Tkinter import Tk
from idlelib.configDialog import ConfigDialog
from idlelib.macosxSupport import _initializeTkVariantTests
class ConfigDialogTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
requires('gui')
cls.root = Tk()
_initializeTkVariantTests(cls.root)
@classmethod
def tearDownClass(cls):
cls.root.destroy()
del cls.root
def test_dialog(self):
d=ConfigDialog(self.root, 'Test', _utest=True)
d.destroy()
if __name__ == '__main__':
unittest.main(verbosity=2)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment