#!/usr/bin/env python3
"""
Script de test pour le système de monitoring
"""

import sys
import os
sys.path.append('.')

from monitoring_bot import TradingMonitor
from claude_analyzer import ClaudeAnalyzer

def test_monitoring():
    """Test du système de monitoring"""
    print("=== TEST DU SYSTÈME DE MONITORING ===\n")

    # Test du monitor principal
    monitor = TradingMonitor()

    print("1. Test de récupération des données...")
    data = monitor.prepare_analysis_data(hours=48)

    print(f"   - Trades récupérés: {len(data['trades'])}")
    print(f"   - Signaux récupérés: {len(data['signals'])}")
    print(f"   - Symboles avec données: {len(data['candle_data'])}")
    print(f"   - Performances: {data['performance']}")

    # Sauvegarde des données
    print("\n2. Test de sauvegarde...")
    filename = monitor.save_analysis_data(data)
    if filename:
        print(f"   ✓ Données sauvegardées: {filename}")
    else:
        print("   ✗ Erreur de sauvegarde")

    # Test de Claude (sans API key)
    print("\n3. Test du module Claude...")
    analyzer = ClaudeAnalyzer()
    prompt = analyzer.create_analysis_prompt(data)

    print(f"   - Prompt généré: {len(prompt)} caractères")
    analyzer.save_prompt_for_debug(prompt, "logs/test_prompt.txt")
    print("   ✓ Prompt sauvegardé pour debug")

    # Affichage d'un extrait du prompt
    print("\n4. Extrait du prompt généré:")
    print("-" * 50)
    print(prompt[:500] + "..." if len(prompt) > 500 else prompt)
    print("-" * 50)

    print("\n=== TEST TERMINÉ ===")
    print("\nPour activer l'analyse Claude:")
    print("1. Définir ANTHROPIC_API_KEY dans l'environnement")
    print("2. Lancer: python3 monitoring_bot.py --hours 24")
    print("3. Ou activer le timer: systemctl start crypto-monitoring.timer")

if __name__ == "__main__":
    test_monitoring()