diff options
author | Charles-François Natali <neologix@free.fr> | 2011-11-02 19:32:54 +0100 |
---|---|---|
committer | Charles-François Natali <neologix@free.fr> | 2011-11-02 19:32:54 +0100 |
commit | 09f871462f2b6cd53daf7cb43e861737af9ebc52 (patch) | |
tree | 7e295b2684dc3de3c60aafd8f6533c11b75728d6 /Lib/test/test_httpservers.py | |
parent | 0fc13ae3453daee287d826aa2eb063e6e960941b (diff) | |
download | cpython-git-09f871462f2b6cd53daf7cb43e861737af9ebc52.tar.gz |
Issue #13308: Fix test_httpservers failures when run as root.
Diffstat (limited to 'Lib/test/test_httpservers.py')
-rw-r--r-- | Lib/test/test_httpservers.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/Lib/test/test_httpservers.py b/Lib/test/test_httpservers.py index 3de0923efe..97abdf5692 100644 --- a/Lib/test/test_httpservers.py +++ b/Lib/test/test_httpservers.py @@ -324,8 +324,10 @@ class SimpleHTTPServerTestCase(BaseTestCase): f = open(os.path.join(self.tempdir_name, 'index.html'), 'w') response = self.request('/' + self.tempdir_name + '/') self.check_status_and_reason(response, 200) - if os.name == 'posix': - # chmod won't work as expected on Windows platforms + + # chmod() doesn't work as expected on Windows, and filesystem + # permissions are ignored by root on Unix. + if os.name == 'posix' and os.geteuid() != 0: os.chmod(self.tempdir, 0) response = self.request(self.tempdir_name + '/') self.check_status_and_reason(response, 404) @@ -370,6 +372,9 @@ print "%%s, %%s, %%s" %% (form.getfirst("spam"), form.getfirst("eggs"), form.getfirst("bacon")) """ + +@unittest.skipIf(hasattr(os, 'geteuid') and os.geteuid() == 0, + "This test can't be run reliably as root (issue #13308).") class CGIHTTPServerTestCase(BaseTestCase): class request_handler(NoLogRequestHandler, CGIHTTPRequestHandler): pass |