Files
SnarfCode/scripts/test_semaphore_final.py

33 lines
1010 B
Python

import urllib.request
import ssl
import sys
sys.stdout.reconfigure(encoding='utf-8')
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
class NoRedirectHandler(urllib.request.HTTPRedirectHandler):
def redirect_request(self, req, fp, code, msg, headers, newurl):
return None
opener = urllib.request.build_opener(NoRedirectHandler)
tests = [
"https://semaphore.snarfnet.net/",
"https://semaphore.snarfnet.net/auth/oidc/authentik/auth/login",
"https://semaphore.snarfnet.net/auth/oidc/authentik/redirect?code=sample&state=sample",
]
for url in tests:
req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
try:
resp = opener.open(req, timeout=8)
print(f"✓ {url} -> {resp.status} {resp.reason}")
except urllib.error.HTTPError as e:
print(f"✓ {url} -> {e.code} {e.reason} (Location: {e.headers.get('Location')})")
except Exception as e:
print(f"✗ {url} -> Error: {e}")