diff options
| author | Gregory P. Smith <greg@mad-scientist.com> | 2009-04-06 06:47:37 (GMT) |
|---|---|---|
| committer | Gregory P. Smith <greg@mad-scientist.com> | 2009-04-06 06:47:37 (GMT) |
| commit | dd7b6302ee1b4ee541aa2070380d9262cd1a907b (patch) | |
| tree | 83142c20a5a94b0bf018aa2fc9510b9417c3f910 /Lib/test/test_os.py | |
| parent | 28f4d20508495f0046c173e2528d9b2315def130 (diff) | |
| download | cpython-dd7b6302ee1b4ee541aa2070380d9262cd1a907b.zip cpython-dd7b6302ee1b4ee541aa2070380d9262cd1a907b.tar.gz cpython-dd7b6302ee1b4ee541aa2070380d9262cd1a907b.tar.bz2 | |
Merged revisions 71299 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r71299 | gregory.p.smith | 2009-04-05 16:43:58 -0700 (Sun, 05 Apr 2009) | 3 lines
Fixes issue5705: os.setuid() and friends did not accept the same range of
values that pwd.getpwnam() returns.
........
Diffstat (limited to 'Lib/test/test_os.py')
| -rw-r--r-- | Lib/test/test_os.py | 45 |
1 files changed, 44 insertions, 1 deletions
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index 91dcd04..909e0ab 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -600,6 +600,48 @@ if sys.platform != 'win32': class Win32ErrorTests(unittest.TestCase): pass + class PosixUidGidTests(unittest.TestCase): + if hasattr(os, 'setuid'): + def test_setuid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.setuid, 0) + self.assertRaises(OverflowError, os.setuid, 1<<32) + + if hasattr(os, 'setgid'): + def test_setgid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.setgid, 0) + self.assertRaises(OverflowError, os.setgid, 1<<32) + + if hasattr(os, 'seteuid'): + def test_seteuid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.seteuid, 0) + self.assertRaises(OverflowError, os.seteuid, 1<<32) + + if hasattr(os, 'setegid'): + def test_setegid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.setegid, 0) + self.assertRaises(OverflowError, os.setegid, 1<<32) + + if hasattr(os, 'setreuid'): + def test_setreuid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.setreuid, 0, 0) + self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) + self.assertRaises(OverflowError, os.setreuid, 0, 1<<32) + + if hasattr(os, 'setregid'): + def test_setregid(self): + if os.getuid() != 0: + self.assertRaises(os.error, os.setregid, 0, 0) + self.assertRaises(OverflowError, os.setregid, 1<<32, 0) + self.assertRaises(OverflowError, os.setregid, 0, 1<<32) +else: + class PosixUidGidTests(unittest.TestCase): + pass + def test_main(): test_support.run_unittest( FileTests, @@ -611,7 +653,8 @@ def test_main(): DevNullTests, URandomTests, Win32ErrorTests, - TestInvalidFD + TestInvalidFD, + PosixUidGidTests ) if __name__ == "__main__": |
