Issue #17883: Tweak test_tcl testLoadWithUNC to skip the test in the
event of a permission error on Windows and to properly report other skip conditions.
This commit is contained in:
parent
a1ea893334
commit
57d35c6494
|
@ -138,18 +138,15 @@ class TclTest(unittest.TestCase):
|
|||
tcl = self.interp
|
||||
self.assertRaises(TclError,tcl.eval,'package require DNE')
|
||||
|
||||
@unittest.skipUnless(sys.platform == 'win32', "only applies to Windows")
|
||||
def testLoadWithUNC(self):
|
||||
import sys
|
||||
if sys.platform != 'win32':
|
||||
return
|
||||
|
||||
# Build a UNC path from the regular path.
|
||||
# Something like
|
||||
# \\%COMPUTERNAME%\c$\python27\python.exe
|
||||
|
||||
fullname = os.path.abspath(sys.executable)
|
||||
if fullname[1] != ':':
|
||||
return
|
||||
self.skipTest('unusable path: %r' % fullname)
|
||||
unc_name = r'\\%s\%s$\%s' % (os.environ['COMPUTERNAME'],
|
||||
fullname[0],
|
||||
fullname[3:])
|
||||
|
@ -158,7 +155,14 @@ class TclTest(unittest.TestCase):
|
|||
env.unset("TCL_LIBRARY")
|
||||
cmd = '%s -c "import Tkinter; print Tkinter"' % (unc_name,)
|
||||
|
||||
p = Popen(cmd, stdout=PIPE, stderr=PIPE)
|
||||
try:
|
||||
p = Popen(cmd, stdout=PIPE, stderr=PIPE)
|
||||
except WindowsError as e:
|
||||
if e.winerror == 5:
|
||||
self.skipTest('Not permitted to start the child process')
|
||||
else:
|
||||
raise
|
||||
|
||||
out_data, err_data = p.communicate()
|
||||
|
||||
msg = '\n\n'.join(['"Tkinter.py" not in output',
|
||||
|
|
|
@ -23,6 +23,10 @@ Library
|
|||
Tests
|
||||
-----
|
||||
|
||||
- Issue #17883: Tweak test_tcl testLoadWithUNC to skip the test in the
|
||||
event of a permission error on Windows and to properly report other
|
||||
skip conditions.
|
||||
|
||||
- Issue #17883: Backported _is_gui_available() in test.test_support to
|
||||
avoid hanging Windows buildbots on test_ttk_guionly.
|
||||
|
||||
|
|
Loading…
Reference in New Issue