up
This commit is contained in:
@@ -192,14 +192,14 @@ with tempfile.TemporaryDirectory(prefix="venue-https-") as directory:
|
||||
# Test-only CA is explicit; public HTTPS verification is never disabled.
|
||||
context = ssl.create_default_context(cafile=str(root / "ca.pem"))
|
||||
|
||||
def request(domain, path, tls=True):
|
||||
def request(domain, path, tls=True, method="GET", body=None):
|
||||
port = int(run("docker", "port", proxy, "443/tcp" if tls else "80/tcp").split(":")[-1])
|
||||
connection = http.client.HTTPConnection("127.0.0.1", port, timeout=10)
|
||||
if tls:
|
||||
connection.sock = context.wrap_socket(socket.create_connection(("127.0.0.1", port), timeout=10),
|
||||
server_hostname=domain)
|
||||
try:
|
||||
connection.request("GET", path, headers={"Host": domain})
|
||||
connection.request(method, path, body=body, headers={"Host": domain})
|
||||
response = connection.getresponse()
|
||||
return response.status, response.getheader("Location"), response.read().decode()
|
||||
finally:
|
||||
@@ -224,6 +224,7 @@ with tempfile.TemporaryDirectory(prefix="venue-https-") as directory:
|
||||
assert request(domain, "/api/test/ping?value=1", tls=False)[:2] == (308, "https://" + domain + "/api/test/ping?value=1")
|
||||
assert request(domain, "/api/test/ping?value=1") == (200, None, "api:/api/test/ping?value=1")
|
||||
assert request(domain, "/api/files/material.pdf") == (200, None, "api:/api/files/material.pdf")
|
||||
assert request(domain, "/api/games/import", method="POST", body=b"test ZIP") == (200, None, "api:/api/games/import")
|
||||
assert request(ui, "/team-story/1?password=test") == (200, None, "spa:/team-story/1?password=test")
|
||||
assert request(api, "/docs/") == (200, None, "api:/docs/")
|
||||
run("docker", "restart", proxy)
|
||||
|
||||
Reference in New Issue
Block a user