[Python-checkins] [3.11] gh-90473: Skip POSIX tests that don't apply to WASI (GH-93536) (GH-93540)

ambv webhook-mailer at python.org
Mon Jun 6 14:09:35 EDT 2022


https://github.com/python/cpython/commit/986ce4e6138d2d14f0f3d1ed394ee5ee69486b12
commit: 986ce4e6138d2d14f0f3d1ed394ee5ee69486b12
branch: 3.11
author: Christian Heimes <christian at python.org>
committer: ambv <lukasz at langa.pl>
date: 2022-06-06T20:09:22+02:00
summary:

[3.11] gh-90473: Skip POSIX tests that don't apply to WASI (GH-93536) (GH-93540)

(cherry picked from commit 80a39daecd9ea7cf5593d98221032f8b8fb1c485)

Co-authored-by: Christian Heimes <christian at python.org>

files:
M Lib/test/test_posix.py

diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py
index 28e5e90297e24..7efe3c5ceb6b3 100644
--- a/Lib/test/test_posix.py
+++ b/Lib/test/test_posix.py
@@ -31,8 +31,8 @@
                               os_helper.TESTFN + '-dummy-symlink')
 
 requires_32b = unittest.skipUnless(
-    # Emscripten has 32 bits pointers, but support 64 bits syscall args.
-    sys.maxsize < 2**32 and not support.is_emscripten,
+    # Emscripten/WASI have 32 bits pointers, but support 64 bits syscall args.
+    sys.maxsize < 2**32 and not (support.is_emscripten or support.is_wasi),
     'test is only meaningful on 32-bit builds'
 )
 
@@ -547,6 +547,7 @@ def test_readv_overflow_32bits(self):
 
     @unittest.skipUnless(hasattr(posix, 'dup'),
                          'test needs posix.dup()')
+    @unittest.skipIf(support.is_wasi, "WASI does not have dup()")
     def test_dup(self):
         fp = open(os_helper.TESTFN)
         try:
@@ -564,6 +565,7 @@ def test_confstr(self):
 
     @unittest.skipUnless(hasattr(posix, 'dup2'),
                          'test needs posix.dup2()')
+    @unittest.skipIf(support.is_wasi, "WASI does not have dup2()")
     def test_dup2(self):
         fp1 = open(os_helper.TESTFN)
         fp2 = open(os_helper.TESTFN)
@@ -1212,6 +1214,7 @@ def test_sched_setaffinity(self):
             # bpo-47205: does not raise OSError on FreeBSD
             self.assertRaises(OSError, posix.sched_setaffinity, -1, mask)
 
+    @unittest.skipIf(support.is_wasi, "No dynamic linking on WASI")
     def test_rtld_constants(self):
         # check presence of major RTLD_* constants
         posix.RTLD_LAZY
@@ -1406,6 +1409,10 @@ def test_utime_dir_fd(self):
                     # whoops!  using both together not supported on this platform.
                     pass
 
+    @unittest.skipIf(
+        support.is_wasi,
+        "WASI: symlink following on path_link is not supported"
+    )
     @unittest.skipUnless(
         hasattr(os, "link") and os.link in os.supports_dir_fd,
         "test needs dir_fd support in os.link()"



More information about the Python-checkins mailing list