aboutsummaryrefslogtreecommitdiff
path: root/Lib
diff options
context:
space:
mode:
authorRoss Lagerwall <rosslagerwall@gmail.com>2012-12-13 15:20:26 +0000
committerRoss Lagerwall <rosslagerwall@gmail.com>2012-12-13 15:20:26 +0000
commita0b315f5f77ce2e68df4ca8d6174a266592b2c49 (patch)
treea072e2b0a26803b5a640d7c6fc5e02b2dcf753cc /Lib
parentCross compiling needs host and build settings. configure no longer (diff)
downloadcpython-a0b315f5f77ce2e68df4ca8d6174a266592b2c49.tar.gz
cpython-a0b315f5f77ce2e68df4ca8d6174a266592b2c49.tar.bz2
cpython-a0b315f5f77ce2e68df4ca8d6174a266592b2c49.zip
Issue #16661: Fix the os.getgrouplist() test by not assuming that it
gives the same output as "id -G".
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_posix.py13
1 files changed, 3 insertions, 10 deletions
diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py
index f59607b4f53..4ad735055d0 100644
--- a/Lib/test/test_posix.py
+++ b/Lib/test/test_posix.py
@@ -647,17 +647,10 @@ class PosixTester(unittest.TestCase):
@unittest.skipUnless(hasattr(pwd, 'getpwuid'), "test needs pwd.getpwuid()")
@unittest.skipUnless(hasattr(os, 'getuid'), "test needs os.getuid()")
def test_getgrouplist(self):
- with os.popen('id -G') as idg:
- groups = idg.read().strip()
- ret = idg.close()
+ user = pwd.getpwuid(os.getuid())[0]
+ group = pwd.getpwuid(os.getuid())[3]
+ self.assertIn(group, posix.getgrouplist(user, group))
- if ret is not None or not groups:
- raise unittest.SkipTest("need working 'id -G'")
-
- self.assertEqual(
- set([int(x) for x in groups.split()]),
- set(posix.getgrouplist(pwd.getpwuid(os.getuid())[0],
- pwd.getpwuid(os.getuid())[3])))
@unittest.skipUnless(hasattr(os, 'getegid'), "test needs os.getegid()")
def test_getgroups(self):