def test_values(self):
entries = grp.getgrall()
+ entriesbyname = {}
entriesbygid = {}
for e in entries:
self.assertEqual(e[3], e.gr_mem)
self.assert_(isinstance(e.gr_mem, list))
- self.assertEqual(grp.getgrnam(e.gr_name), e)
# The following won't work, because of duplicate entries
# for one gid
# self.assertEqual(grp.getgrgid(e.gr_gid), e)
- # instead of this collect all entries for one gid
+ # instead of this collect all entries for one gid/name
# and check afterwards
+ entriesbyname.setdefault(e.gr_name, []).append(e)
entriesbygid.setdefault(e.gr_gid, []).append(e)
# check whether the entry returned by getgrgid()
# for each uid is among those from getgrall() for this uid
for e in entries:
self.assert_(grp.getgrgid(e.gr_gid) in entriesbygid[e.gr_gid])
+ self.assert_(grp.getgrnam(e.gr_name) in entriesbyname[e.gr_name])
def test_errors(self):
self.assertRaises(TypeError, grp.getgrgid)
def test_values(self):
entries = pwd.getpwall()
+ entriesbyname = {}
entriesbyuid = {}
for e in entries:
self.assertEqual(e[6], e.pw_shell)
self.assert_(isinstance(e.pw_shell, basestring))
- self.assertEqual(pwd.getpwnam(e.pw_name), e)
# The following won't work, because of duplicate entries
# for one uid
# self.assertEqual(pwd.getpwuid(e.pw_uid), e)
# instead of this collect all entries for one uid
# and check afterwards
+ entriesbyname.setdefault(e.pw_name, []).append(e)
entriesbyuid.setdefault(e.pw_uid, []).append(e)
# check whether the entry returned by getpwuid()
# for each uid is among those from getpwall() for this uid
for e in entries:
+ self.assert_(pwd.getpwnam(e.pw_name) in entriesbyname[e.pw_name])
self.assert_(pwd.getpwuid(e.pw_uid) in entriesbyuid[e.pw_uid])
def test_errors(self):