[Python-checkins] r73495 - in python/trunk: Lib/lib-tk/test/test_tkinter/test_loadtk.py Lib/test/test_tcl.py Misc/NEWS

guilherme.polo python-checkins at python.org
Sun Jun 21 19:22:51 CEST 2009


Author: guilherme.polo
Date: Sun Jun 21 19:22:50 2009
New Revision: 73495

Log:
Issue #5450: Moved tests involving loading tk from Lib/test/test_tcl to
Lib/lib-tk/test/test_tkinter/test_loadtk in order to follow the behaviour of
test_ttkguionly.


Added:
   python/trunk/Lib/lib-tk/test/test_tkinter/test_loadtk.py   (contents, props changed)
Modified:
   python/trunk/Lib/test/test_tcl.py
   python/trunk/Misc/NEWS

Added: python/trunk/Lib/lib-tk/test/test_tkinter/test_loadtk.py
==============================================================================
--- (empty file)
+++ python/trunk/Lib/lib-tk/test/test_tkinter/test_loadtk.py	Sun Jun 21 19:22:50 2009
@@ -0,0 +1,45 @@
+import os
+import sys
+import unittest
+from test import test_support
+from Tkinter import Tcl, TclError
+
+test_support.requires('gui')
+
+class TkLoadTest(unittest.TestCase):
+
+    @unittest.skipIf('DISPLAY' not in os.environ, 'No $DISPLAY set.')
+    def testLoadTk(self):
+        tcl = Tcl()
+        self.assertRaises(TclError,tcl.winfo_geometry)
+        tcl.loadtk()
+        self.assertEqual('1x1+0+0', tcl.winfo_geometry())
+        tcl.destroy()
+
+    def testLoadTkFailure(self):
+        old_display = None
+        if sys.platform.startswith(('win', 'darwin', 'cygwin')):
+            # no failure possible on windows?
+
+            # XXX Maybe on tk older than 8.4.13 it would be possible,
+            # see tkinter.h.
+            return
+        with test_support.EnvironmentVarGuard() as env:
+            if 'DISPLAY' in os.environ:
+                del env['DISPLAY']
+                # on some platforms, deleting environment variables
+                # doesn't actually carry through to the process level
+                # because they don't support unsetenv
+                # If that's the case, abort.
+                display = os.popen('echo $DISPLAY').read().strip()
+                if display:
+                    return
+
+            tcl = Tcl()
+            self.assertRaises(TclError, tcl.winfo_geometry)
+            self.assertRaises(TclError, tcl.loadtk)
+
+tests_gui = (TkLoadTest, )
+
+if __name__ == "__main__":
+    test_support.run_unittest(*tests_gui)

Modified: python/trunk/Lib/test/test_tcl.py
==============================================================================
--- python/trunk/Lib/test/test_tcl.py	(original)
+++ python/trunk/Lib/test/test_tcl.py	Sun Jun 21 19:22:50 2009
@@ -127,37 +127,6 @@
         tcl = self.interp
         self.assertRaises(TclError,tcl.eval,'package require DNE')
 
-    def testLoadTk(self):
-        import os
-        if 'DISPLAY' not in os.environ:
-            # skipping test of clean upgradeability
-            return
-        tcl = Tcl()
-        self.assertRaises(TclError,tcl.winfo_geometry)
-        tcl.loadtk()
-        self.assertEqual('1x1+0+0', tcl.winfo_geometry())
-        tcl.destroy()
-
-    def testLoadTkFailure(self):
-        import os
-        old_display = None
-        import sys
-        if sys.platform.startswith(('win', 'darwin', 'cygwin')):
-            return  # no failure possible on windows?
-        with test_support.EnvironmentVarGuard() as env:
-            if 'DISPLAY' in os.environ:
-                del env['DISPLAY']
-                # on some platforms, deleting environment variables
-                # doesn't actually carry through to the process level
-                # because they don't support unsetenv
-                # If that's the case, abort.
-                display = os.popen('echo $DISPLAY').read().strip()
-                if display:
-                    return
-
-            tcl = Tcl()
-            self.assertRaises(TclError, tcl.winfo_geometry)
-            self.assertRaises(TclError, tcl.loadtk)
 
 def test_main():
     test_support.run_unittest(TclTest, TkinterTest)

Modified: python/trunk/Misc/NEWS
==============================================================================
--- python/trunk/Misc/NEWS	(original)
+++ python/trunk/Misc/NEWS	Sun Jun 21 19:22:50 2009
@@ -1152,6 +1152,11 @@
 Tests
 -----
 
+- Issue #5450: Moved tests involving loading tk from Lib/test/test_tcl to
+  Lib/lib-tk/test/test_tkinter/test_loadtk. With this, these tests demonstrate
+  the same behaviour as test_ttkguionly (and now also test_tk) which is to
+  skip the tests if DISPLAY is defined but can't be used.
+
 - Issue #6152: New option '-j'/'--multiprocess' for regrtest allows running
   regression tests in parallel, shortening the total runtime.
 


More information about the Python-checkins mailing list