diff options
Diffstat (limited to 'Lib/test/test_idle.py')
-rw-r--r-- | Lib/test/test_idle.py | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/Lib/test/test_idle.py b/Lib/test/test_idle.py index 141e89e493..da05da50f3 100644 --- a/Lib/test/test_idle.py +++ b/Lib/test/test_idle.py @@ -1,16 +1,23 @@ import unittest -from test import support from test.support import import_module -# Skip test if _thread or _tkinter wasn't built or idlelib was deleted. +# Skip test if _thread or _tkinter wasn't built, if idlelib is missing, +# or if tcl/tk is not the 8.5+ needed for ttk widgets. import_module('threading') # imported by PyShell, imports _thread tk = import_module('tkinter') # imports _tkinter -idletest = import_module('idlelib.idle_test') +if tk.TkVersion < 8.5: + raise unittest.SkipTest("IDLE requires tk 8.5 or later.") +idlelib = import_module('idlelib') -# Without test_main present, regrtest.runtest_inner (line1219) calls -# unittest.TestLoader().loadTestsFromModule(this_module) which calls -# load_tests() if it finds it. (Unittest.main does the same.) -load_tests = idletest.load_tests +# Before test imports, tell IDLE to avoid changing the environment. +idlelib.testing = True + +# unittest.main and test.libregrtest.runtest.runtest_inner +# call load_tests, when present, to discover tests to run. +from idlelib.idle_test import load_tests if __name__ == '__main__': - unittest.main(verbosity=2, exit=False) + tk.NoDefaultRoot() + unittest.main(exit=False) + tk._support_default_root = 1 + tk._default_root = None |