From 52268941f37e3e27bd01792b081877ec3bc9ce12 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Tue, 17 Mar 2020 09:51:44 -0700 Subject: bpo-26067: Do not fail test_shutil / chown when gid/uid cannot be resolved (#19032) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * bpo-26067: Do not fail test_shutil.chown when gid/uid cannot be resolved There is no guarantee that the users primary uid or gid can be resolved in the unix group/account databases. Skip the last part of the chown test if we cannot resolve the gid or uid to a name. * 📜🤖 Added by blurb_it. * Address review feedback * address review feedback correctly * fix typo Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> --- Lib/test/test_shutil.py | 17 +++++++++++------ .../next/Tests/2020-03-16-20-54-55.bpo-26067.m18_VV.rst | 1 + 2 files changed, 12 insertions(+), 6 deletions(-) create mode 100644 Misc/NEWS.d/next/Tests/2020-03-16-20-54-55.bpo-26067.m18_VV.rst diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py index 076c450..b9fdfd1 100644 --- a/Lib/test/test_shutil.py +++ b/Lib/test/test_shutil.py @@ -1666,12 +1666,17 @@ class TestMisc(BaseTest, unittest.TestCase): shutil.chown(dirname, group=gid) check_chown(dirname, gid=gid) - user = pwd.getpwuid(uid)[0] - group = grp.getgrgid(gid)[0] - shutil.chown(filename, user, group) - check_chown(filename, uid, gid) - shutil.chown(dirname, user, group) - check_chown(dirname, uid, gid) + try: + user = pwd.getpwuid(uid)[0] + group = grp.getgrgid(gid)[0] + except KeyError: + # On some systems uid/gid cannot be resolved. + pass + else: + shutil.chown(filename, user, group) + check_chown(filename, uid, gid) + shutil.chown(dirname, user, group) + check_chown(dirname, uid, gid) class TestWhich(BaseTest, unittest.TestCase): diff --git a/Misc/NEWS.d/next/Tests/2020-03-16-20-54-55.bpo-26067.m18_VV.rst b/Misc/NEWS.d/next/Tests/2020-03-16-20-54-55.bpo-26067.m18_VV.rst new file mode 100644 index 0000000..8b897a8 --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2020-03-16-20-54-55.bpo-26067.m18_VV.rst @@ -0,0 +1 @@ +Do not fail test_shutil test_chown test when uid or gid of user cannot be resolved to a name. -- cgit v0.12