def testGroup4(self): """ Test with a group name line in the group file that starts with a "+". (See bug #4470 for more details). """ if not os.path.exists("/etc/group"): return grpfile = open(os.path.join(self.test_root, "etc", "group"), "w") grpfile.write( \ """root::0: gk::0: bin::2:root,daemon +plusgrp adm::4:root,daemon uucp::5:root mail::6:root tty::7:root,adm +""") grpfile.close() self.assertTrue("root" == \ portable.get_name_by_gid(0, self.test_root, True)) self.assertTrue(0 == \ portable.get_group_by_name("root", self.test_root, True)) self.assertTrue(0 == \ portable.get_group_by_name("gk", self.test_root, True)) self.assertTrue(7 == \ portable.get_group_by_name("tty", self.test_root, True)) self.assertRaises(KeyError, portable.get_group_by_name, "plusgrp", self.test_root, True)
def testGroup3(self): """ Test with corrupt/oddball group file """ if not os.path.exists("/etc/group"): return grpfile = file(os.path.join(self.test_root, "etc", "group"), "w") grpfile.write( """root::0: blorg bin::2:root,daemon corrupt:x adm::4:root,daemon uucp::5:root mail::6:root tty::7:root,adm gk::0: +""" ) grpfile.close() self.assert_("root" == portable.get_name_by_gid(0, self.test_root, True)) self.assert_(0 == portable.get_group_by_name("root", self.test_root, True)) self.assert_(0 == portable.get_group_by_name("gk", self.test_root, True)) self.assert_(7 == portable.get_group_by_name("tty", self.test_root, True)) self.assertRaises(KeyError, portable.get_group_by_name, "ThisShouldNotExist", self.test_root, True) self.assertRaises(KeyError, portable.get_group_by_name, "corrupt", self.test_root, True) self.assertRaises(KeyError, portable.get_group_by_name, 570, self.test_root, True)
def testGroup4(self): """ Test with a group name line in the group file that starts with a "+". (See bug #4470 for more details). """ if not os.path.exists("/etc/group"): return grpfile = file(os.path.join(self.test_root, "etc", "group"), "w") grpfile.write( """root::0: gk::0: bin::2:root,daemon +plusgrp adm::4:root,daemon uucp::5:root mail::6:root tty::7:root,adm +""" ) grpfile.close() self.assert_("root" == portable.get_name_by_gid(0, self.test_root, True)) self.assert_(0 == portable.get_group_by_name("root", self.test_root, True)) self.assert_(0 == portable.get_group_by_name("gk", self.test_root, True)) self.assert_(7 == portable.get_group_by_name("tty", self.test_root, True)) self.assertRaises(KeyError, portable.get_group_by_name, "plusgrp", self.test_root, True)
def testGroup2(self): """ Test with a missing group file """ if not os.path.exists("/etc/group"): return self.assertRaises(KeyError, portable.get_group_by_name, "ThisShouldNotExist", self.test_root, True) # This should work on unix systems, since we'll "bootstrap" # out to the OS's version. And AFAIK all unix systems have # a group with gid 0. grpname = portable.get_name_by_gid(0, self.test_root, True) self.assert_(0 == portable.get_group_by_name(grpname, self.test_root, True))
def testGroup2(self): """ Test with a missing group file """ if not os.path.exists("/etc/group"): return self.assertRaises(KeyError, portable.get_group_by_name, "ThisShouldNotExist", self.test_root, True) # This should work on unix systems, since we'll "bootstrap" # out to the OS's version. And AFAIK all unix systems have # a group with gid 0. grpname = portable.get_name_by_gid(0, self.test_root, True) self.assertTrue(0 == \ portable.get_group_by_name(grpname, self.test_root, True))
def testGroup3(self): """ Test with corrupt/oddball group file """ if not os.path.exists("/etc/group"): return grpfile = open(os.path.join(self.test_root, "etc", "group"), "w") grpfile.write( \ """root::0: blorg bin::2:root,daemon corrupt:x adm::4:root,daemon uucp::5:root mail::6:root tty::7:root,adm gk::0: +""") grpfile.close() self.assertTrue("root" == \ portable.get_name_by_gid(0, self.test_root, True)) self.assertTrue(0 == \ portable.get_group_by_name("root", self.test_root, True)) self.assertTrue(0 == \ portable.get_group_by_name("gk", self.test_root, True)) self.assertTrue(7 == \ portable.get_group_by_name("tty", self.test_root, True)) self.assertRaises(KeyError, portable.get_group_by_name, "ThisShouldNotExist", self.test_root, True) self.assertRaises(KeyError, portable.get_group_by_name, "corrupt", self.test_root, True) self.assertRaises(KeyError, portable.get_group_by_name, 570, self.test_root, True)