Files
python-sdk/run_mock_server.py
T
zeekay be9f45c753 fix: update Python version requirement to 3.10+ for hanzo-net compatibility
- Remove Python 3.9 from test matrix (hanzo-net requires 3.10+)
- Update hanzo package to require Python 3.10+
- Add test mock server helpers for improved testing
2025-08-13 22:42:53 -05:00

58 lines
1.7 KiB
Python

#!/usr/bin/env python3
import json
import time
from http.server import HTTPServer, BaseHTTPRequestHandler
from threading import Thread
class MockHandler(BaseHTTPRequestHandler):
def do_POST(self):
if self.path == "/utils/token_counter":
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
response = {
"model_used": "gpt-3.5-turbo",
"request_model": "gpt-3.5-turbo",
"tokenizer_type": "cl100k_base",
"total_tokens": 10
}
self.wfile.write(json.dumps(response).encode())
else:
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(b'{}')
def do_GET(self):
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(b'{}')
def do_PUT(self):
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(b'{}')
def do_DELETE(self):
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(b'{}')
def log_message(self, format, *args):
pass
server = HTTPServer(("127.0.0.1", 4010), MockHandler)
thread = Thread(target=server.serve_forever)
thread.daemon = True
thread.start()
print("Mock server ready on port 4010")
# Keep server running
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
server.shutdown()