- Frontend v4 accessible sur réseau local (192.168.1.40) - Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard) - Ollama GPU fonctionnel - Self-healing interactif - Dashboard confiance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
117 lines
3.2 KiB
Python
117 lines
3.2 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Test de la correction des erreurs ResizeObserver
|
|
|
|
Auteur : Dom, Alice, Kiro - 08 janvier 2026
|
|
"""
|
|
|
|
import subprocess
|
|
import time
|
|
import sys
|
|
import os
|
|
from pathlib import Path
|
|
|
|
def test_frontend_build():
|
|
"""Test la compilation du frontend."""
|
|
print("🧪 Test de compilation du frontend...")
|
|
|
|
frontend_path = Path("visual_workflow_builder/frontend")
|
|
if not frontend_path.exists():
|
|
print("❌ Répertoire frontend non trouvé")
|
|
return False
|
|
|
|
try:
|
|
# Test de compilation
|
|
result = subprocess.run(
|
|
["npm", "run", "build"],
|
|
cwd=frontend_path,
|
|
capture_output=True,
|
|
text=True,
|
|
timeout=120
|
|
)
|
|
|
|
if result.returncode == 0:
|
|
print("✅ Compilation réussie")
|
|
return True
|
|
else:
|
|
print(f"❌ Erreur de compilation: {result.stderr}")
|
|
return False
|
|
|
|
except subprocess.TimeoutExpired:
|
|
print("⏰ Timeout lors de la compilation")
|
|
return False
|
|
except Exception as e:
|
|
print(f"❌ Erreur: {e}")
|
|
return False
|
|
|
|
def test_files_exist():
|
|
"""Vérifie que tous les fichiers de correction existent."""
|
|
print("🧪 Vérification des fichiers de correction...")
|
|
|
|
required_files = [
|
|
"visual_workflow_builder/frontend/src/utils/resizeObserverPolyfill.js",
|
|
"visual_workflow_builder/frontend/src/components/ResizeObserverErrorBoundary/index.tsx",
|
|
"visual_workflow_builder/frontend/.env",
|
|
"visual_workflow_builder/frontend/webpack.config.resizeobserver.js"
|
|
]
|
|
|
|
all_exist = True
|
|
for file_path in required_files:
|
|
if Path(file_path).exists():
|
|
print(f"✅ {file_path}")
|
|
else:
|
|
print(f"❌ {file_path} - MANQUANT")
|
|
all_exist = False
|
|
|
|
return all_exist
|
|
|
|
def main():
|
|
"""Fonction principale de test."""
|
|
print("=" * 60)
|
|
print(" TEST CORRECTION RESIZEOBSERVER")
|
|
print("=" * 60)
|
|
print("Auteur : Dom, Alice, Kiro - 08 janvier 2026")
|
|
print()
|
|
|
|
tests = [
|
|
("Fichiers de correction", test_files_exist),
|
|
("Compilation frontend", test_frontend_build)
|
|
]
|
|
|
|
passed = 0
|
|
total = len(tests)
|
|
|
|
for test_name, test_func in tests:
|
|
print(f"\n{'-'*40}")
|
|
print(f" {test_name}")
|
|
print(f"{'-'*40}")
|
|
|
|
if test_func():
|
|
passed += 1
|
|
print(f"✅ {test_name} - PASSÉ")
|
|
else:
|
|
print(f"❌ {test_name} - ÉCHOUÉ")
|
|
|
|
print("\n" + "=" * 60)
|
|
print(" RÉSUMÉ")
|
|
print("=" * 60)
|
|
|
|
success_rate = (passed / total) * 100
|
|
print(f"Tests passés: {passed}/{total} ({success_rate:.1f}%)")
|
|
|
|
if passed == total:
|
|
print("🎉 CORRECTION RÉUSSIE!")
|
|
print("Les erreurs ResizeObserver ont été corrigées.")
|
|
print()
|
|
print("Pour démarrer le frontend:")
|
|
print(" cd visual_workflow_builder/frontend")
|
|
print(" npm start")
|
|
return True
|
|
else:
|
|
print("⚠️ Certains tests ont échoué")
|
|
return False
|
|
|
|
if __name__ == "__main__":
|
|
success = main()
|
|
sys.exit(0 if success else 1)
|