v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- 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>
This commit is contained in:
116
test_resizeobserver_fix.py
Normal file
116
test_resizeobserver_fix.py
Normal file
@@ -0,0 +1,116 @@
|
||||
#!/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)
|
||||
Reference in New Issue
Block a user