bpo-46150: ensure fakeuser does not exist in PosixPathTest.test_expanduser (GH-30240)

Ensure `fakeuser` does not exist in `PosixPathTest.test_expanduser`
This commit is contained in:
Nikita Sobolev 2021-12-24 11:07:50 +03:00 committed by GitHub
parent d8880677a7
commit b8de8b7039
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 5 deletions

View file

@ -2558,13 +2558,21 @@ class PosixPathTest(_BasePathTest, unittest.TestCase):
othername = username
otherhome = userhome
fakename = 'fakeuser'
# This user can theoretically exist on a test runner. Create unique name:
try:
while pwd.getpwnam(fakename):
fakename += '1'
except KeyError:
pass # Non-existent name found
p1 = P('~/Documents')
p2 = P('~' + username + '/Documents')
p3 = P('~' + othername + '/Documents')
p4 = P('../~' + username + '/Documents')
p5 = P('/~' + username + '/Documents')
p2 = P(f'~{username}/Documents')
p3 = P(f'~{othername}/Documents')
p4 = P(f'../~{username}/Documents')
p5 = P(f'/~{username}/Documents')
p6 = P('')
p7 = P('~fake800813user/Documents')
p7 = P(f'~{fakename}/Documents')
with os_helper.EnvironmentVarGuard() as env:
env.pop('HOME', None)