revert 83832; unix test breakage
This commit is contained in:
parent
6eccb79aa3
commit
718f222372
|
@ -853,7 +853,7 @@ class Popen(object):
|
||||||
startupinfo.dwFlags |= _subprocess.STARTF_USESHOWWINDOW
|
startupinfo.dwFlags |= _subprocess.STARTF_USESHOWWINDOW
|
||||||
startupinfo.wShowWindow = _subprocess.SW_HIDE
|
startupinfo.wShowWindow = _subprocess.SW_HIDE
|
||||||
comspec = os.environ.get("COMSPEC", "cmd.exe")
|
comspec = os.environ.get("COMSPEC", "cmd.exe")
|
||||||
args = comspec + " /c " + '"%s"' % args
|
args = comspec + " /c " + args
|
||||||
if (_subprocess.GetVersion() >= 0x80000000L or
|
if (_subprocess.GetVersion() >= 0x80000000L or
|
||||||
os.path.basename(comspec).lower() == "command.com"):
|
os.path.basename(comspec).lower() == "command.com"):
|
||||||
# Win9x, or using command.com on NT. We need to
|
# Win9x, or using command.com on NT. We need to
|
||||||
|
|
|
@ -872,54 +872,12 @@ class HelperFunctionTests(unittest.TestCase):
|
||||||
self.assertEqual([(256, 999), (666,), (666,)], record_calls)
|
self.assertEqual([(256, 999), (666,), (666,)], record_calls)
|
||||||
|
|
||||||
|
|
||||||
@unittest.skipUnless(mswindows, "mswindows only")
|
|
||||||
class CommandsWithSpaces (BaseTestCase):
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
super(CommandsWithSpaces, self).setUp()
|
|
||||||
f, fname = mkstemp(".py", "te st")
|
|
||||||
self.fname = fname.lower ()
|
|
||||||
os.write(f, b"import sys;"
|
|
||||||
b"sys.stdout.write('%d %s' % (len(sys.argv), [a.lower () for a in sys.argv]))"
|
|
||||||
)
|
|
||||||
os.close(f)
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
os.remove(self.fname)
|
|
||||||
super(CommandsWithSpaces, self).tearDown()
|
|
||||||
|
|
||||||
def with_spaces(self, *args, **kwargs):
|
|
||||||
kwargs['stdout'] = subprocess.PIPE
|
|
||||||
p = subprocess.Popen(*args, **kwargs)
|
|
||||||
self.assertEqual(
|
|
||||||
p.stdout.read ().decode("mbcs"),
|
|
||||||
"2 [%r, 'ab cd']" % self.fname
|
|
||||||
)
|
|
||||||
|
|
||||||
def test_shell_string_with_spaces(self):
|
|
||||||
# call() function with string argument with spaces on Windows
|
|
||||||
self.with_spaces('"%s" "%s"' % (self.fname, "ab cd"), shell=1)
|
|
||||||
|
|
||||||
def test_shell_sequence_with_spaces(self):
|
|
||||||
# call() function with sequence argument with spaces on Windows
|
|
||||||
self.with_spaces([self.fname, "ab cd"], shell=1)
|
|
||||||
|
|
||||||
def test_noshell_string_with_spaces(self):
|
|
||||||
# call() function with string argument with spaces on Windows
|
|
||||||
self.with_spaces('"%s" "%s" "%s"' % (sys.executable, self.fname,
|
|
||||||
"ab cd"))
|
|
||||||
|
|
||||||
def test_noshell_sequence_with_spaces(self):
|
|
||||||
# call() function with sequence argument with spaces on Windows
|
|
||||||
self.with_spaces([sys.executable, self.fname, "ab cd"])
|
|
||||||
|
|
||||||
def test_main():
|
def test_main():
|
||||||
unit_tests = (ProcessTestCase,
|
unit_tests = (ProcessTestCase,
|
||||||
POSIXProcessTestCase,
|
POSIXProcessTestCase,
|
||||||
Win32ProcessTestCase,
|
Win32ProcessTestCase,
|
||||||
ProcessTestCaseNoPoll,
|
ProcessTestCaseNoPoll,
|
||||||
HelperFunctionTests,
|
HelperFunctionTests)
|
||||||
CommandsWithSpaces)
|
|
||||||
|
|
||||||
test_support.run_unittest(*unit_tests)
|
test_support.run_unittest(*unit_tests)
|
||||||
test_support.reap_children()
|
test_support.reap_children()
|
||||||
|
|
Loading…
Reference in New Issue