summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_platform.py
diff options
context:
space:
mode:
authorChih-Hsuan Yen <yan12125@gmail.com>2020-04-18 14:20:54 (GMT)
committerGitHub <noreply@github.com>2020-04-18 14:20:54 (GMT)
commitfb940408cea1fb34fed1418832f240f886dadf57 (patch)
tree8a4d8787be9ca28b53d5a9879eed08f527c9ff7a /Lib/test/test_platform.py
parent7e64414f57b70dc5bc0ab19a3162a0735f9bfabf (diff)
downloadcpython-fb940408cea1fb34fed1418832f240f886dadf57.zip
cpython-fb940408cea1fb34fed1418832f240f886dadf57.tar.gz
cpython-fb940408cea1fb34fed1418832f240f886dadf57.tar.bz2
bpo-35967: Skip test with `uname -p` on Android (GH-19577)
The uname binary on Android does not support -p [1]. Here is a sample log: ``` 0:06:03 load avg: 0.56 [254/421/8] test_platform failed -- running: test_asyncio (5 min 53 sec) uname: Unknown option p (see "uname --help") test test_platform failed -- Traceback (most recent call last): File "/data/local/tmp/lib/python3.9/test/test_platform.py", line 170, in test_uname_processor proc_res = subprocess.check_output(['uname', '-p'], text=True).strip() File "/data/local/tmp/lib/python3.9/subprocess.py", line 420, in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, File "/data/local/tmp/lib/python3.9/subprocess.py", line 524, in run raise CalledProcessError(retcode, process.args, subprocess.CalledProcessError: Command '['uname', '-p']' returned non-zero exit status 1. ``` [1] https://android.googlesource.com/platform/external/toybox/+/refs/heads/master/toys/posix/uname.c Automerge-Triggered-By: @jaraco
Diffstat (limited to 'Lib/test/test_platform.py')
-rw-r--r--Lib/test/test_platform.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/Lib/test/test_platform.py b/Lib/test/test_platform.py
index 855304a..998f1e0 100644
--- a/Lib/test/test_platform.py
+++ b/Lib/test/test_platform.py
@@ -167,8 +167,11 @@ class PlatformTest(unittest.TestCase):
On some systems, the processor must match the output
of 'uname -p'. See Issue 35967 for rationale.
"""
- proc_res = subprocess.check_output(['uname', '-p'], text=True).strip()
- expect = platform._unknown_as_blank(proc_res)
+ try:
+ proc_res = subprocess.check_output(['uname', '-p'], text=True).strip()
+ expect = platform._unknown_as_blank(proc_res)
+ except (OSError, subprocess.CalledProcessError):
+ expect = ''
self.assertEqual(platform.uname().processor, expect)
@unittest.skipUnless(sys.platform.startswith('win'), "windows only test")