From fb5ce7eea18b287679f4a8b70c2391f6e9d71833 Mon Sep 17 00:00:00 2001 From: Terry Jan Reedy Date: Mon, 5 Sep 2016 00:01:34 -0400 Subject: [PATCH] Issue #27918# test.resource.is_gui_available no longer flashes tk window. Also, don't run it if 'gui' is not requested. Patch by Xiang Zhang. --- Lib/test/support/__init__.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index 867dc2f527d..007f3bcf37b 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -464,6 +464,7 @@ def _is_gui_available(): try: from tkinter import Tk root = Tk() + root.withdraw() root.update() root.destroy() except Exception as e: @@ -488,12 +489,12 @@ def is_resource_enabled(resource): def requires(resource, msg=None): """Raise ResourceDenied if the specified resource is not available.""" - if resource == 'gui' and not _is_gui_available(): - raise ResourceDenied(_is_gui_available.reason) if not is_resource_enabled(resource): if msg is None: msg = "Use of the %r resource not enabled" % resource raise ResourceDenied(msg) + if resource == 'gui' and not _is_gui_available(): + raise ResourceDenied(_is_gui_available.reason) def _requires_unix_version(sysname, min_version): """Decorator raising SkipTest if the OS is `sysname` and the version is less