bpo-31904: add shell requirement for test_pipes (GH-23489)
VxWorks has no user space shell provided so it can't support pipes module. Also add shell requirement for running test_pipes.
This commit is contained in:
parent
996a1ef8ae
commit
a86a274b72
|
@ -17,6 +17,8 @@ The :mod:`pipes` module defines a class to abstract the concept of a *pipeline*
|
||||||
Because the module uses :program:`/bin/sh` command lines, a POSIX or compatible
|
Because the module uses :program:`/bin/sh` command lines, a POSIX or compatible
|
||||||
shell for :func:`os.system` and :func:`os.popen` is required.
|
shell for :func:`os.system` and :func:`os.popen` is required.
|
||||||
|
|
||||||
|
.. availability:: Unix. Not available on VxWorks.
|
||||||
|
|
||||||
The :mod:`pipes` module defines the following class:
|
The :mod:`pipes` module defines the following class:
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -421,7 +421,7 @@ is_jython = sys.platform.startswith('java')
|
||||||
|
|
||||||
is_android = hasattr(sys, 'getandroidapilevel')
|
is_android = hasattr(sys, 'getandroidapilevel')
|
||||||
|
|
||||||
if sys.platform != 'win32':
|
if sys.platform not in ('win32', 'vxworks'):
|
||||||
unix_shell = '/system/bin/sh' if is_android else '/bin/sh'
|
unix_shell = '/system/bin/sh' if is_android else '/bin/sh'
|
||||||
else:
|
else:
|
||||||
unix_shell = None
|
unix_shell = None
|
||||||
|
|
|
@ -3,13 +3,16 @@ import os
|
||||||
import string
|
import string
|
||||||
import unittest
|
import unittest
|
||||||
import shutil
|
import shutil
|
||||||
from test.support import run_unittest, reap_children
|
from test.support import run_unittest, reap_children, unix_shell
|
||||||
from test.support.os_helper import TESTFN, unlink
|
from test.support.os_helper import TESTFN, unlink
|
||||||
|
|
||||||
|
|
||||||
if os.name != 'posix':
|
if os.name != 'posix':
|
||||||
raise unittest.SkipTest('pipes module only works on posix')
|
raise unittest.SkipTest('pipes module only works on posix')
|
||||||
|
|
||||||
|
if not (unix_shell and os.path.exists(unix_shell)):
|
||||||
|
raise unittest.SkipTest('pipes module requires a shell')
|
||||||
|
|
||||||
TESTFN2 = TESTFN + "2"
|
TESTFN2 = TESTFN + "2"
|
||||||
|
|
||||||
# tr a-z A-Z is not portable, so make the ranges explicit
|
# tr a-z A-Z is not portable, so make the ranges explicit
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
add shell requirement for test_pipes
|
Loading…
Reference in New Issue