87 lines
2.4 KiB
Python
87 lines
2.4 KiB
Python
"""
|
|
Quick test to verify Flask routes are registered correctly
|
|
Run this from the app folder: python test_routes.py
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
|
|
# Add current directory to path
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
try:
|
|
from app import app
|
|
|
|
print("=" * 60)
|
|
print("FLASK ROUTES TEST")
|
|
print("=" * 60)
|
|
print()
|
|
print("✓ Flask app imported successfully")
|
|
print()
|
|
print("Registered routes:")
|
|
print("-" * 60)
|
|
|
|
routes = []
|
|
for rule in app.url_map.iter_rules():
|
|
routes.append({
|
|
'endpoint': rule.endpoint,
|
|
'methods': ', '.join(sorted(rule.methods - {'HEAD', 'OPTIONS'})),
|
|
'path': str(rule)
|
|
})
|
|
|
|
# Sort by path
|
|
routes.sort(key=lambda x: x['path'])
|
|
|
|
# Find all login-related routes
|
|
login_routes = [r for r in routes if 'login' in r['path'].lower() or 'login' in r['endpoint'].lower()]
|
|
user_routes = [r for r in routes if 'user' in r['path'].lower()]
|
|
|
|
print("\n📝 Login & Authentication Routes:")
|
|
for route in login_routes:
|
|
print(f" {route['path']:40} [{route['methods']:15}] -> {route['endpoint']}")
|
|
|
|
print("\n👥 User Management Routes:")
|
|
for route in user_routes:
|
|
print(f" {route['path']:40} [{route['methods']:15}] -> {route['endpoint']}")
|
|
|
|
print("\n📊 Total routes registered:", len(routes))
|
|
print()
|
|
print("=" * 60)
|
|
print("✓ All routes loaded successfully!")
|
|
print("=" * 60)
|
|
print()
|
|
print("To start the server:")
|
|
print(" python app.py")
|
|
print()
|
|
print("Then access:")
|
|
print(" http://localhost:8080/login")
|
|
print(" http://localhost:8080/users")
|
|
print()
|
|
|
|
except ImportError as e:
|
|
print("=" * 60)
|
|
print("❌ IMPORT ERROR")
|
|
print("=" * 60)
|
|
print()
|
|
print(f"Failed to import Flask app: {e}")
|
|
print()
|
|
print("This might be because:")
|
|
print(" 1. Flask is not installed: pip install Flask")
|
|
print(" 2. Werkzeug is not installed: pip install Werkzeug")
|
|
print(" 3. There's a syntax error in app.py")
|
|
print()
|
|
print("Try running:")
|
|
print(" pip install -r requirements.txt")
|
|
print()
|
|
|
|
except Exception as e:
|
|
print("=" * 60)
|
|
print("❌ ERROR")
|
|
print("=" * 60)
|
|
print()
|
|
print(f"Error: {e}")
|
|
print()
|
|
import traceback
|
|
traceback.print_exc()
|
|
print()
|