Issue #18604: Consolidated checks for GUI availability.
test_support._is_gui_available is now defined the same way on every
platform, and now includes the Windows-specific check that had been in the
Windows version of _is_gui_available and the OSX-specific check that was
in runtktests.check_tk_availability. Also, every platform checks whether
Tk can be instantiated (if the platform-specific checks passed).
diff --git a/Lib/test/test_idle.py b/Lib/test/test_idle.py
index 495b416..66dd8af 100644
--- a/Lib/test/test_idle.py
+++ b/Lib/test/test_idle.py
@@ -1,24 +1,12 @@
import unittest
from test import test_support as support
-from test.test_support import import_module, use_resources
+from test.test_support import import_module
# Skip test if _thread or _tkinter wasn't built or idlelib was deleted.
import_module('threading') # imported by idlelib.PyShell, imports _thread
tk = import_module('Tkinter') # imports _tkinter
idletest = import_module('idlelib.idle_test')
-# If buildbot improperly sets gui resource (#18365, #18441), remove it
-# so requires('gui') tests are skipped while non-gui tests still run.
-# If there is a problem with Macs, see #18441, msg 193805
-if use_resources and 'gui' in use_resources:
- try:
- root = tk.Tk()
- root.destroy()
- del root
- except tk.TclError:
- while 'gui' in use_resources:
- use_resources.remove('gui')
-
# 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.)