mirror of
https://github.com/python/cpython.git
synced 2025-07-15 23:35:23 +00:00

This follows the previous patch that changed idlelib file names. Class names that matched old module names are not changed. Change idlelib imports in turtledemo.__main__. Exception: config-extensions.def. Previously, extension section names, file names, and class names had to match. Changing section names would create cross-version conflicts in config-extensions.cfg (user customizations). Instead map old names to new file names at point of import in editor.EditorWindow.load_extension. Patch extensively tested with test_idle, idle_test.htest.py, a custom import-all test, running IDLE in a console to catch messages, and testing each menu item. Based on a patch by Al Sweigart.
33 lines
753 B
Python
33 lines
753 B
Python
'''Unittests for idlelib/config.py
|
|
|
|
Coverage: 46% just by creating dialog. The other half is change code.
|
|
|
|
'''
|
|
import unittest
|
|
from test.support import requires
|
|
from tkinter import Tk
|
|
from idlelib.configdialog import ConfigDialog
|
|
from idlelib.macosx 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.remove_var_callbacks()
|
|
d.destroy()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main(verbosity=2)
|