]> granicus.if.org Git - python/commitdiff
Issue #27918# test.resource.is_gui_available no longer flashes tk window.
authorTerry Jan Reedy <tjreedy@udel.edu>
Mon, 5 Sep 2016 04:01:34 +0000 (00:01 -0400)
committerTerry Jan Reedy <tjreedy@udel.edu>
Mon, 5 Sep 2016 04:01:34 +0000 (00:01 -0400)
Also, don't run it if 'gui' is not requested.  Patch by Xiang Zhang.

Lib/test/support/__init__.py

index 867dc2f527ddb8ba9d7ebfc8dd3bc74f812c406c..007f3bcf37bd94f920982ff468627f2ab046a527 100644 (file)
@@ -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