/opt/imh-python/lib/python3.9/site-packages/cherrypy/test
NameSizeModeActions
static/-0755rm
__pycache__/-0755rm
benchmark.py125630644editdlrm
checkerdemo.py18610644editdlrm
fastcgi.conf6860644editdlrm
fcgi.conf4860644editdlrm
helper.py163690644editdlrm
logtest.py81510644editdlrm
modfastcgi.py46520644editdlrm
modfcgid.py42370644editdlrm
modpy.py49780644editdlrm
modwsgi.py48340644editdlrm
sessiondemo.py54250644editdlrm
style.css170644editdlrm
test.pem22540644editdlrm
test_auth_basic.py44990644editdlrm
test_auth_digest.py44540644editdlrm
test_bus.py99600644editdlrm
test_caching.py143860644editdlrm
test_config.py88360644editdlrm
test_config_server.py40370644editdlrm
test_conn.py307440644editdlrm
test_core.py304080644editdlrm
test_dynamicobjectmapping.py123310644editdlrm
test_encoding.py175350644editdlrm
test_etags.py30930644editdlrm
test_http.py109390644editdlrm
test_httputil.py24120644editdlrm
test_iterator.py57240644editdlrm
test_json.py28600644editdlrm
test_logging.py83150644editdlrm
test_mime.py45380644editdlrm
test_misc_tools.py70940644editdlrm
test_native.py9710644editdlrm
test_objectmapping.py145040644editdlrm
test_params.py18620644editdlrm
test_plugins.py3340644editdlrm
test_proxy.py56300644editdlrm
test_refleaks.py15550644editdlrm
test_request_obj.py370970644editdlrm
test_routes.py25830644editdlrm
test_session.py179490644editdlrm
test_sessionauthenticate.py20130644editdlrm
test_states.py167030644editdlrm
test_static.py167020644editdlrm
test_tools.py178510644editdlrm
test_tutorials.py69640644editdlrm
test_virtualhost.py40210644editdlrm
test_wsgiapps.py39970644editdlrm
test_wsgi_ns.py28120644editdlrm
test_wsgi_unix_socket.py22280644editdlrm
test_wsgi_vhost.py10340644editdlrm
test_xmlrpc.py45840644editdlrm
webtest.py2620644editdlrm
_test_decorators.py9510644editdlrm
_test_states_demo.py18760644editdlrm
__init__.py3960644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/cherrypy/test/test_wsgi_unix_socket.py (2228B)
import os import socket import atexit import tempfile from http.client import HTTPConnection import pytest import cherrypy from cherrypy.test import helper def usocket_path(): fd, path = tempfile.mkstemp('cp_test.sock') os.close(fd) os.remove(path) return path USOCKET_PATH = usocket_path() class USocketHTTPConnection(HTTPConnection): """ HTTPConnection over a unix socket. """ def __init__(self, path): HTTPConnection.__init__(self, 'localhost') self.path = path def __call__(self, *args, **kwargs): """ Catch-all method just to present itself as a constructor for the HTTPConnection. """ return self def connect(self): """ Override the connect method and assign a unix socket as a transport. """ sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) sock.connect(self.path) self.sock = sock atexit.register(lambda: os.remove(self.path)) @pytest.mark.skipif("sys.platform == 'win32'") class WSGI_UnixSocket_Test(helper.CPWebCase): """ Test basic behavior on a cherrypy wsgi server listening on a unix socket. It exercises the config option `server.socket_file`. """ HTTP_CONN = USocketHTTPConnection(USOCKET_PATH) @staticmethod def setup_server(): class Root(object): @cherrypy.expose def index(self): return 'Test OK' @cherrypy.expose def error(self): raise Exception('Invalid page') config = { 'server.socket_file': USOCKET_PATH } cherrypy.config.update(config) cherrypy.tree.mount(Root()) def tearDown(self): cherrypy.config.update({'server.socket_file': None}) def test_simple_request(self): self.getPage('/') self.assertStatus('200 OK') self.assertInBody('Test OK') def test_not_found(self): self.getPage('/invalid_path') self.assertStatus('404 Not Found') def test_internal_error(self): self.getPage('/error') self.assertStatus('500 Internal Server Error') self.assertInBody('Invalid page')