File size: 3,017 Bytes
b5d5e39
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import sys
from pathlib import Path

# Add project root to path
project_root = Path(__file__).parent
sys.path.append(str(project_root))

from services.hf_endpoint_monitor import hf_monitor
from core.coordinator import coordinator
from utils.config import config
import os

def test_debug_features():
    """Test the enhanced debug features"""
    print("=== Debug Dashboard Feature Test ===")
    print()
    
    # Test HF Endpoint Monitor Enhanced Features
    print("1. Testing HF Endpoint Monitor Enhanced Features:")
    try:
        # Basic status
        basic_status = hf_monitor.get_status_summary()
        print(f"   Basic Status: {basic_status}")
        
        # Detailed status
        detailed_status = hf_monitor.get_detailed_status()
        print(f"   Detailed Status Keys: {list(detailed_status.keys())}")
        
        # Performance metrics
        perf_metrics = hf_monitor.get_performance_metrics()
        print(f"   Performance Metrics: {perf_metrics}")
        
        print("   βœ… HF Endpoint Monitor Enhanced Features Working")
    except Exception as e:
        print(f"   ❌ HF Endpoint Monitor Test Failed: {e}")
    
    print()
    
    # Test Coordinator Status Tracking
    print("2. Testing Coordinator Status Tracking:")
    try:
        # Coordination status
        coord_status = coordinator.get_coordination_status()
        print(f"   Coordination Status: {coord_status}")
        
        # Recent activities (test with demo user)
        recent_activities = coordinator.get_recent_activities("demo_user")
        print(f"   Recent Activities Keys: {list(recent_activities.keys())}")
        
        print("   βœ… Coordinator Status Tracking Working")
    except Exception as e:
        print(f"   ❌ Coordinator Status Tracking Test Failed: {e}")
    
    print()
    
    # Test Configuration Display
    print("3. Testing Configuration Display:")
    try:
        print(f"   Environment Type: {'HF Space' if config.is_hf_space else 'Local'}")
        print(f"   Fallback Mode: {config.use_fallback}")
        print(f"   HF Token Available: {bool(config.hf_token)}")
        print(f"   Tavily API Key: {bool(os.getenv('TAVILY_API_KEY'))}")
        print(f"   OpenWeather API Key: {bool(config.openweather_api_key)}")
        
        # Feature flags
        features = []
        if config.use_fallback:
            features.append("Fallback Mode")
        if os.getenv("TAVILY_API_KEY"):
            features.append("Web Search")
        if config.openweather_api_key:
            features.append("Weather Data")
        if config.hf_token:
            features.append("Deep Analysis")
        
        print(f"   Active Features: {', '.join(features) if features else 'None'}")
        
        print("   βœ… Configuration Display Working")
    except Exception as e:
        print(f"   ❌ Configuration Display Test Failed: {e}")
    
    print()
    print("πŸŽ‰ Debug Dashboard Feature Test Completed!")

if __name__ == "__main__":
    test_debug_features()