diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index 36d90e89c2dac6..085815f2c99baf 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -838,7 +838,9 @@ def check_stat(uid, gid): self.assertRaises(OSError, chown_func, first_param, 0, -1) check_stat(uid, gid) if hasattr(os, 'getgroups'): - if 0 not in os.getgroups(): + # Also check the effective gid, which the kernel + # accepts for chown even if not in getgroups(). + if 0 not in os.getgroups() and os.getegid() != 0: self.assertRaises(OSError, chown_func, first_param, -1, 0) check_stat(uid, gid) # test illegal types