aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/test/test_cmd_line_script.py
diff options
context:
space:
mode:
authorRussell Keith-Magee <russell@keith-magee.com>2024-02-05 08:04:57 +0800
committerGitHub <noreply@github.com>2024-02-05 01:04:57 +0100
commit391659b3da570bfa28fed5fbdb6f2d9c26ab3dd0 (patch)
tree19d4bd5693a55e06e3ab4a88826e284a1e9717ae /Lib/test/test_cmd_line_script.py
parent15f6f048a6ecdf0f6f4fc076d013be3d110f8ed6 (diff)
downloadcpython-391659b3da570bfa28fed5fbdb6f2d9c26ab3dd0.tar.gz
cpython-391659b3da570bfa28fed5fbdb6f2d9c26ab3dd0.zip
gh-114099: Add test exclusions to support running the test suite on iOS (#114889)
Add test annotations required to run the test suite on iOS (PEP 730). The majority of the change involve annotating tests that use subprocess, but are skipped on Emscripten/WASI for other reasons, and including iOS/tvOS/watchOS under the same umbrella as macOS/darwin checks. `is_apple` and `is_apple_mobile` test helpers have been added to identify *any* Apple platform, and "any Apple platform except macOS", respectively.
Diffstat (limited to 'Lib/test/test_cmd_line_script.py')
-rw-r--r--Lib/test/test_cmd_line_script.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/Lib/test/test_cmd_line_script.py b/Lib/test/test_cmd_line_script.py
index 48754d5a63d..3a5a8abf81e 100644
--- a/Lib/test/test_cmd_line_script.py
+++ b/Lib/test/test_cmd_line_script.py
@@ -14,8 +14,7 @@ import io
import textwrap
from test import support
-from test.support import import_helper
-from test.support import os_helper
+from test.support import import_helper, is_apple, os_helper
from test.support.script_helper import (
make_pkg, make_script, make_zip_pkg, make_zip_script,
assert_python_ok, assert_python_failure, spawn_python, kill_python)
@@ -557,12 +556,17 @@ class CmdLineTest(unittest.TestCase):
self.assertTrue(text[3].startswith('NameError'))
def test_non_ascii(self):
- # Mac OS X denies the creation of a file with an invalid UTF-8 name.
+ # Apple platforms deny the creation of a file with an invalid UTF-8 name.
# Windows allows creating a name with an arbitrary bytes name, but
# Python cannot a undecodable bytes argument to a subprocess.
- # WASI does not permit invalid UTF-8 names.
- if (os_helper.TESTFN_UNDECODABLE
- and sys.platform not in ('win32', 'darwin', 'emscripten', 'wasi')):
+ # Emscripten/WASI does not permit invalid UTF-8 names.
+ if (
+ os_helper.TESTFN_UNDECODABLE
+ and sys.platform not in {
+ "win32", "emscripten", "wasi"
+ }
+ and not is_apple
+ ):
name = os.fsdecode(os_helper.TESTFN_UNDECODABLE)
elif os_helper.TESTFN_NONASCII:
name = os_helper.TESTFN_NONASCII