mirror of
https://github.com/go-gost/gost.git
synced 2026-10-08 12:05:46 +00:00
tests/e2e: add HTTP response cache e2e tests
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
from http.server import BaseHTTPRequestHandler, HTTPServer
|
||||
|
||||
_counter = 0
|
||||
|
||||
|
||||
class Handler(BaseHTTPRequestHandler):
|
||||
def do_GET(self):
|
||||
global _counter
|
||||
_counter += 1
|
||||
body = b"cache-test-%d" % _counter
|
||||
self.send_response(200)
|
||||
self.send_header("Content-Length", str(len(body)))
|
||||
self.end_headers()
|
||||
self.wfile.write(body)
|
||||
|
||||
def log_message(self, format, *args):
|
||||
return
|
||||
|
||||
|
||||
HTTPServer(("0.0.0.0", 5677), Handler).serve_forever()
|
||||
@@ -0,0 +1,46 @@
|
||||
from http.server import BaseHTTPRequestHandler, HTTPServer
|
||||
import socket
|
||||
import threading
|
||||
|
||||
_counter = 0
|
||||
_http_server = None
|
||||
|
||||
|
||||
class Handler(BaseHTTPRequestHandler):
|
||||
def do_GET(self):
|
||||
global _counter
|
||||
_counter += 1
|
||||
body = b"cache-test-%d" % _counter
|
||||
self.send_response(200)
|
||||
self.send_header("Content-Length", str(len(body)))
|
||||
self.send_header("Connection", "close")
|
||||
self.end_headers()
|
||||
self.wfile.write(body)
|
||||
threading.Thread(target=stop_server, daemon=True).start()
|
||||
|
||||
def log_message(self, format, *args):
|
||||
return
|
||||
|
||||
|
||||
def stop_server():
|
||||
global _http_server
|
||||
if _http_server:
|
||||
_http_server.shutdown()
|
||||
_http_server.server_close()
|
||||
|
||||
|
||||
def start_raw_acceptor():
|
||||
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||
sock.bind(("0.0.0.0", 5676))
|
||||
sock.listen(5)
|
||||
while True:
|
||||
conn, addr = sock.accept()
|
||||
conn.close()
|
||||
|
||||
|
||||
_http_server = HTTPServer(("0.0.0.0", 5676), Handler)
|
||||
_http_server.serve_forever()
|
||||
_http_server.server_close()
|
||||
|
||||
start_raw_acceptor()
|
||||
Reference in New Issue
Block a user