Files
unionflow-mobile-apps/scripts/start-integration-tests.ps1
dahoud d094d6db9c Initial commit: unionflow-mobile-apps
Application Flutter complète (sans build artifacts).

Signed-off-by: lions dev Team
2026-03-15 16:30:08 +00:00

91 lines
3.8 KiB
PowerShell

# Script de démarrage pour les tests d'intégration mobile-backend
# Vérifie tous les prérequis et guide l'utilisateur
Write-Host "=== Démarrage Tests d'Intégration Finance Workflow ===" -ForegroundColor Cyan
Write-Host ""
$allGood = $true
# 1. Vérifier Quarkus
Write-Host "[1/3] Vérification Backend Quarkus..." -ForegroundColor Yellow
try {
$quarkusHealth = Invoke-RestMethod -Uri 'http://localhost:8085/q/health' -Method Get
Write-Host " [OK] Quarkus actif sur port 8085" -ForegroundColor Green
} catch {
Write-Host " [KO] Quarkus non accessible" -ForegroundColor Red
Write-Host " Démarrer avec:" -ForegroundColor Yellow
Write-Host " cd unionflow/unionflow-server-impl-quarkus" -ForegroundColor Gray
Write-Host " mvn compile quarkus:dev -D`"quarkus.http.port=8085`"" -ForegroundColor Gray
$allGood = $false
}
# 2. Vérifier Keycloak
Write-Host "`n[2/3] Vérification Keycloak..." -ForegroundColor Yellow
try {
$keycloakTest = Invoke-WebRequest -Uri 'http://localhost:8180' -UseBasicParsing -Method Get
Write-Host " [OK] Keycloak actif sur port 8180" -ForegroundColor Green
# Vérifier realm unionflow
$tokenResponse = Invoke-RestMethod -Method Post `
-Uri 'http://localhost:8180/realms/master/protocol/openid-connect/token' `
-ContentType 'application/x-www-form-urlencoded' `
-Body 'username=admin&password=admin&grant_type=password&client_id=admin-cli'
$token = $tokenResponse.access_token
$realms = Invoke-RestMethod -Method Get `
-Uri 'http://localhost:8180/admin/realms' `
-Headers @{ Authorization = "Bearer $token" }
$unionflow = $realms | Where-Object { $_.realm -eq 'unionflow' }
if ($unionflow) {
Write-Host " [OK] Realm 'unionflow' existe" -ForegroundColor Green
} else {
Write-Host " [KO] Realm 'unionflow' manquant" -ForegroundColor Red
$allGood = $false
}
} catch {
Write-Host " [KO] Keycloak non accessible" -ForegroundColor Red
Write-Host " Démarrer avec:" -ForegroundColor Yellow
Write-Host " cd unionflow" -ForegroundColor Gray
Write-Host " docker-compose up -d keycloak" -ForegroundColor Gray
$allGood = $false
}
# 3. Vérifier PostgreSQL
Write-Host "`n[3/3] Vérification PostgreSQL..." -ForegroundColor Yellow
try {
$pgTest = Test-NetConnection -ComputerName localhost -Port 5432 -WarningAction SilentlyContinue
if ($pgTest.TcpTestSucceeded) {
Write-Host " [OK] PostgreSQL actif sur port 5432" -ForegroundColor Green
} else {
Write-Host " [KO] PostgreSQL non accessible" -ForegroundColor Red
Write-Host " Démarrer avec:" -ForegroundColor Yellow
Write-Host " cd unionflow" -ForegroundColor Gray
Write-Host " docker-compose up -d postgres" -ForegroundColor Gray
$allGood = $false
}
} catch {
Write-Host " [KO] Impossible de vérifier PostgreSQL" -ForegroundColor Red
$allGood = $false
}
# Résumé
Write-Host "`n=== RÉSUMÉ ===" -ForegroundColor Cyan
if ($allGood) {
Write-Host "[OK] Tous les services sont prêts !" -ForegroundColor Green
Write-Host ""
Write-Host "Prochaine étape:" -ForegroundColor Yellow
Write-Host " 1. Lancer l'app mobile:" -ForegroundColor Gray
Write-Host " cd unionflow/unionflow-mobile-apps" -ForegroundColor Gray
Write-Host " flutter run --dart-define=ENV=dev" -ForegroundColor Gray
Write-Host ""
Write-Host " 2. Consulter le guide de test:" -ForegroundColor Gray
Write-Host " unionflow-mobile-apps/docs/TESTS_INTEGRATION_FINANCE_WORKFLOW.md" -ForegroundColor Gray
Write-Host ""
} else {
Write-Host "[KO] Certains services ne sont pas prêts" -ForegroundColor Red
Write-Host "Corriger les problèmes ci-dessus avant de lancer les tests" -ForegroundColor Yellow
}