Files
v2-Docker/v2_testing/test_admin_login.py
Claude Project Manager 0d7d888502 Initial commit
2025-07-05 17:51:16 +02:00

53 Zeilen
1.7 KiB
Python

#!/usr/bin/env python3
import requests
import urllib3
# Disable SSL warnings for self-signed certificate
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
# Test configuration
base_url = "https://localhost:443"
admin_users = [
{"username": "rac00n", "password": "1248163264"},
{"username": "w@rh@mm3r", "password": "Warhammer123!"}
]
def test_login(username, password):
"""Test login functionality for admin user"""
session = requests.Session()
# Get login page
response = session.get(f"{base_url}/login", verify=False)
if response.status_code != 200:
return f"Failed to access login page: {response.status_code}"
# Attempt login
login_data = {
"username": username,
"password": password
}
response = session.post(f"{base_url}/login", data=login_data, verify=False, allow_redirects=False)
# Check if login was successful (redirect to dashboard)
if response.status_code == 302 and response.headers.get('Location') == '/':
# Try to access dashboard
dashboard_response = session.get(f"{base_url}/", verify=False)
if dashboard_response.status_code == 200 and username in dashboard_response.text:
return f"✓ Login successful for {username}"
else:
return f"✗ Login succeeded but dashboard access failed for {username}"
else:
return f"✗ Login failed for {username}"
# Test both admin users
print("Testing Admin Panel Login Functionality")
print("=" * 40)
for user in admin_users:
result = test_login(user["username"], user["password"])
print(result)
print("\nTesting invalid credentials...")
result = test_login("invalid_user", "wrong_password")
print(result)