Skip to content

Commit f3007ac

Browse files
authored
gh-98393: Update test_os for bytes-like types (#98487)
Address Serhiy Storchaka's review.
1 parent 22bab74 commit f3007ac

File tree

1 file changed

+12
-34
lines changed

1 file changed

+12
-34
lines changed

Lib/test/test_os.py

Lines changed: 12 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3797,8 +3797,6 @@ class Str(str):
37973797
else:
37983798
encoded = os.fsencode(os_helper.TESTFN)
37993799
self.bytes_filenames.append(encoded)
3800-
self.bytes_filenames.append(bytearray(encoded))
3801-
self.bytes_filenames.append(memoryview(encoded))
38023800

38033801
self.filenames = self.bytes_filenames + self.unicode_filenames
38043802

@@ -3810,21 +3808,10 @@ def test_oserror_filename(self):
38103808
(self.filenames, os.rmdir,),
38113809
(self.filenames, os.stat,),
38123810
(self.filenames, os.unlink,),
3811+
(self.filenames, os.listdir,),
3812+
(self.filenames, os.rename, "dst"),
3813+
(self.filenames, os.replace, "dst"),
38133814
]
3814-
if sys.platform == "win32":
3815-
funcs.extend((
3816-
(self.bytes_filenames, os.rename, b"dst"),
3817-
(self.bytes_filenames, os.replace, b"dst"),
3818-
(self.unicode_filenames, os.rename, "dst"),
3819-
(self.unicode_filenames, os.replace, "dst"),
3820-
(self.unicode_filenames, os.listdir, ),
3821-
))
3822-
else:
3823-
funcs.extend((
3824-
(self.filenames, os.listdir,),
3825-
(self.filenames, os.rename, "dst"),
3826-
(self.filenames, os.replace, "dst"),
3827-
))
38283815
if os_helper.can_chmod():
38293816
funcs.append((self.filenames, os.chmod, 0o777))
38303817
if hasattr(os, "chown"):
@@ -3840,11 +3827,7 @@ def test_oserror_filename(self):
38403827
if hasattr(os, "chroot"):
38413828
funcs.append((self.filenames, os.chroot,))
38423829
if hasattr(os, "link"):
3843-
if sys.platform == "win32":
3844-
funcs.append((self.bytes_filenames, os.link, b"dst"))
3845-
funcs.append((self.unicode_filenames, os.link, "dst"))
3846-
else:
3847-
funcs.append((self.filenames, os.link, "dst"))
3830+
funcs.append((self.filenames, os.link, "dst"))
38483831
if hasattr(os, "listxattr"):
38493832
funcs.extend((
38503833
(self.filenames, os.listxattr,),
@@ -3857,21 +3840,16 @@ def test_oserror_filename(self):
38573840
if hasattr(os, "readlink"):
38583841
funcs.append((self.filenames, os.readlink,))
38593842

3860-
38613843
for filenames, func, *func_args in funcs:
38623844
for name in filenames:
3863-
if not isinstance(name, (str, bytes)):
3864-
with self.assertRaises(TypeError):
3865-
func(name, *func_args)
3845+
try:
3846+
func(name, *func_args)
3847+
except OSError as err:
3848+
self.assertIs(err.filename, name, str(func))
3849+
except UnicodeDecodeError:
3850+
pass
38663851
else:
3867-
try:
3868-
func(name, *func_args)
3869-
except OSError as err:
3870-
self.assertIs(err.filename, name, str(func))
3871-
except UnicodeDecodeError:
3872-
pass
3873-
else:
3874-
self.fail("No exception thrown by {}".format(func))
3852+
self.fail(f"No exception thrown by {func}")
38753853

38763854
class CPUCountTests(unittest.TestCase):
38773855
def test_cpu_count(self):
@@ -4351,7 +4329,7 @@ def test_bytes_like(self):
43514329
for cls in bytearray, memoryview:
43524330
path_bytes = cls(os.fsencode(self.path))
43534331
with self.assertRaises(TypeError):
4354-
list(os.scandir(path_bytes))
4332+
os.scandir(path_bytes)
43554333

43564334
@unittest.skipUnless(os.listdir in os.supports_fd,
43574335
'fd support for listdir required for this test.')

0 commit comments

Comments
 (0)