| import sys |
| from pathlib import Path |
|
|
| |
| project_root = Path(__file__).parent |
| sys.path.append(str(project_root)) |
|
|
| def test_hf_activation_features(): |
| """Test the manual HF activation and indication features""" |
| print("=== HF Activation Features Test ===") |
| print() |
| |
| |
| print("1. Testing App.py Manual HF Activation UI:") |
| try: |
| with open('app.py', 'r') as f: |
| content = f.read() |
| |
| required_components = [ |
| 'hf_expert_requested', |
| 'Activate HF Expert', |
| 'π€ HF Expert Analysis', |
| 'Manual HF Analysis Section' |
| ] |
| |
| missing_components = [] |
| for component in required_components: |
| if component not in content: |
| missing_components.append(component) |
| |
| if missing_components: |
| print(f" β Missing components: {missing_components}") |
| else: |
| print(" β
All manual HF activation UI components present") |
| |
| except Exception as e: |
| print(f" β Error reading app.py: {e}") |
| |
| print() |
| |
| |
| print("2. Testing Coordinator Web Search Determination:") |
| try: |
| with open('core/coordinator.py', 'r') as f: |
| content = f.read() |
| |
| required_methods = [ |
| 'determine_web_search_needs', |
| 'manual_hf_analysis', |
| 'get_hf_engagement_status' |
| ] |
| |
| missing_methods = [] |
| for method in required_methods: |
| if method not in content: |
| missing_methods.append(method) |
| |
| if missing_methods: |
| print(f" β Missing methods: {missing_methods}") |
| else: |
| print(" β
All web search determination methods present") |
| |
| except Exception as e: |
| print(f" β Error reading coordinator.py: {e}") |
| |
| print() |
| |
| |
| print("3. Testing HF Monitor Enhanced Status Tracking:") |
| try: |
| with open('services/hf_endpoint_monitor.py', 'r') as f: |
| content = f.read() |
| |
| required_methods = [ |
| 'get_enhanced_status', |
| 'start_hf_analysis', |
| 'finish_hf_analysis' |
| ] |
| |
| missing_methods = [] |
| for method in required_methods: |
| if method not in content: |
| missing_methods.append(method) |
| |
| if missing_methods: |
| print(f" β Missing methods: {missing_methods}") |
| else: |
| print(" β
All enhanced status tracking methods present") |
| |
| except Exception as e: |
| print(f" β Error reading hf_endpoint_monitor.py: {e}") |
| |
| print() |
| |
| |
| print("4. Testing Visual Indication Features:") |
| try: |
| with open('app.py', 'r') as f: |
| content = f.read() |
| |
| visual_indicators = [ |
| 'π€ HF Expert Analysis', |
| 'π§ Activate HF Expert', |
| 'Research Needed', |
| 'Web Research' |
| ] |
| |
| missing_indicators = [] |
| for indicator in visual_indicators: |
| if indicator not in content: |
| missing_indicators.append(indicator) |
| |
| if missing_indicators: |
| print(f" β Missing visual indicators: {missing_indicators}") |
| else: |
| print(" β
All visual indication features present") |
| |
| except Exception as e: |
| print(f" β Error checking visual indicators: {e}") |
| |
| print() |
| print("π HF Activation Features Test Completed!") |
| print() |
| print("π― IMPLEMENTED FEATURES:") |
| print("1. β
Manual HF Expert Activation Button") |
| print("2. β
Visual Indications of HF Engagement") |
| print("3. β
Conversation History Preview for HF") |
| print("4. β
Web Search Need Determination") |
| print("5. β
Research Topic Identification") |
| print("6. β
Enhanced Status Tracking") |
| print("7. β
Clear HF Expert Response Formatting") |
|
|
| if __name__ == "__main__": |
| test_hf_activation_features() |
|
|