gh-95675: fix uid and gid at test_add_dir_getmember (gh-102207)

Co-authored-by: Seonkyo Ok <seonkyo.ok@linecorp.com>
This commit is contained in:
SKO 2023-02-25 11:26:40 +09:00 committed by GitHub
parent 54dfa14c5a
commit 56e93c8020
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 6 deletions

View File

@ -225,18 +225,19 @@ class UstarReadTest(ReadTest, unittest.TestCase):
self.add_dir_and_getmember('bar')
self.add_dir_and_getmember('a'*101)
@unittest.skipIf(
(hasattr(os, 'getuid') and os.getuid() > 0o777_7777) or
(hasattr(os, 'getgid') and os.getgid() > 0o777_7777),
"uid or gid too high for USTAR format."
)
@unittest.skipUnless(hasattr(os, "getuid") and hasattr(os, "getgid"),
"Missing getuid or getgid implementation")
def add_dir_and_getmember(self, name):
def filter(tarinfo):
tarinfo.uid = tarinfo.gid = 100
return tarinfo
with os_helper.temp_cwd():
with tarfile.open(tmpname, 'w') as tar:
tar.format = tarfile.USTAR_FORMAT
try:
os.mkdir(name)
tar.add(name)
tar.add(name, filter=filter)
finally:
os.rmdir(name)
with tarfile.open(tmpname) as tar:

View File

@ -1308,6 +1308,7 @@ Jon Oberheide
Milan Oberkirch
Pascal Oberndoerfer
Géry Ogam
Seonkyo Ok
Jeffrey Ollie
Adam Olsen
Bryan Olson