import sys from pathlib import Path # Add project root to path project_root = Path(__file__).parent sys.path.append(str(project_root)) from utils.config import config from services.hf_endpoint_monitor import hf_monitor def test_hf_url_fix(): """Test the HF endpoint URL fix""" print("=== HF Endpoint URL Fix Test ===") print() # Test configuration parsing print("1. Testing Configuration Parsing:") print(f" Raw HF_API_ENDPOINT_URL: {config.hf_api_url}") print(f" Parsed endpoint URL: {getattr(hf_monitor, 'endpoint_url', 'Not initialized')}") print() # Test URL cleaning print("2. Testing URL Cleaning:") test_urls = [ "https://zxzbfrlg3ssrk7d9.us-east-1.aws.endpoints.huggingface.cloud/v1/", "hf_api_endpoint_url=https://zxzbfrlg3ssrk7d9.us-east-1.aws.endpoints.huggingface.cloud/v1/", "HF_API_ENDPOINT_URL=https://zxzbfrlg3ssrk7d9.us-east-1.aws.endpoints.huggingface.cloud/v1/", "zxzbfrlg3ssrk7d9.us-east-1.aws.endpoints.huggingface.cloud/v1/" ] for url in test_urls: cleaned = hf_monitor._clean_endpoint_url(url) if hasattr(hf_monitor, '_clean_endpoint_url') else "Method not available" print(f" Input: {url}") print(f" Output: {cleaned}") print() # Test HF endpoint status (if token is available) print("3. Testing HF Endpoint Status:") try: status = hf_monitor.check_endpoint_status() print(f" Available: {status.get('available', 'Unknown')}") print(f" Status Code: {status.get('status_code', 'Unknown')}") print(f" Initialized: {status.get('initialized', 'Unknown')}") if 'error' in status: print(f" Error: {status['error']}") except Exception as e: print(f" Error checking status: {e}") print() print("🎉 HF Endpoint URL Fix Test Completed!") if __name__ == "__main__": test_hf_url_fix()