summaryrefslogtreecommitdiff
path: root/Lib/test/test_idle.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_idle.py')
-rw-r--r--Lib/test/test_idle.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/Lib/test/test_idle.py b/Lib/test/test_idle.py
index 141e89e493..ad88e2451c 100644
--- a/Lib/test/test_idle.py
+++ b/Lib/test/test_idle.py
@@ -1,16 +1,21 @@
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, or idlelib is missing,
+# or if tcl/tk version before 8.5, which is 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.")
+tk.NoDefaultRoot()
+idlelib = import_module('idlelib')
+idlelib.testing = True # Avoid locale-changed test error
-# 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
+# Without test_main present, test.libregrtest.runtest.runtest_inner
+# calls (line 173) unittest.TestLoader().loadTestsFromModule(module)
+# which calls load_tests() if it finds it. (Unittest.main does the same.)
+from idlelib.idle_test import load_tests
if __name__ == '__main__':
unittest.main(verbosity=2, exit=False)