fileobj = _StreamProxy(fileobj)
comptype = fileobj.getcomptype()
- self.name = name or ""
+ self.name = os.fspath(name) if name is not None else ""
self.mode = mode
self.comptype = comptype
self.fileobj = fileobj
finally:
os.umask(original_umask)
+ def test_pathlike_name(self):
+ expected_name = os.path.abspath(tmpname)
+ tarpath = os_helper.FakePath(tmpname)
+
+ for func in (tarfile.open, tarfile.TarFile.open):
+ with self.subTest():
+ with func(tarpath, self.mode) as tar:
+ self.assertEqual(tar.name, expected_name)
+ os_helper.unlink(tmpname)
+
class GzipStreamWriteTest(GzipTest, StreamWriteTest):
def test_source_directory_not_leaked(self):