# Scripts UnionFlow Mobile Apps

Scripts utilitaires pour le développement et les tests de l'application mobile.

---

## 🔧 Scripts Disponibles

### 1. `start-integration-tests.ps1`

**Description:** Vérifie tous les prérequis pour les tests d'intégration mobile-backend

**Usage:**
```powershell
.\start-integration-tests.ps1
```

**Vérifie:**
- ✓ Backend Quarkus (port 8085)
- ✓ Keycloak (port 8180)
- ✓ PostgreSQL (port 5432)
- ✓ Realm `unionflow` existe

**Sortie:** Guide de démarrage si tout est prêt, ou instructions pour corriger les problèmes

---

### 2. `check-keycloak-state.ps1`

**Description:** Affiche l'état complet de Keycloak (realm unionflow)

**Usage:**
```powershell
.\check-keycloak-state.ps1
```

**Affiche:**
- Liste des realms
- Utilisateurs du realm unionflow
- Clients configurés
- État du client `unionflow-mobile`

---

### 3. `list-user-roles.ps1`

**Description:** Liste les rôles des utilisateurs Keycloak

**Usage:**
```powershell
# Lister tous les utilisateurs et leurs rôles
.\list-user-roles.ps1

# Lister les rôles d'un utilisateur spécifique
.\list-user-roles.ps1 -Username "admin.meska@unionflow.test"
```

**Affiche:**
- Rôles de chaque utilisateur
- Liste de tous les rôles disponibles dans le realm

---

## 📋 Ordre d'Exécution Recommandé

### Pour démarrer les tests d'intégration:

```powershell
# 1. Vérifier les prérequis
.\start-integration-tests.ps1

# 2. Si tout est OK, vérifier l'état de Keycloak
.\check-keycloak-state.ps1

# 3. Voir les rôles des utilisateurs de test
.\list-user-roles.ps1 -Username "admin.meska@unionflow.test"
.\list-user-roles.ps1 -Username "membre.meska@unionflow.test"
```

### Puis lancer l'app mobile:

```bash
cd unionflow/unionflow-mobile-apps
flutter run --dart-define=ENV=dev
```

---

## 🆘 Troubleshooting

### Erreur "script cannot be loaded because running scripts is disabled"

**Solution:** Exécuter PowerShell en tant qu'administrateur et autoriser l'exécution:

```powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
```

### Erreur "Connection refused" sur Keycloak

**Solution:** Démarrer Keycloak:

```bash
cd unionflow
docker-compose up -d keycloak
```

### Erreur "admin/admin credentials invalid"

**Solution:** Vérifier les credentials admin Keycloak dans docker-compose.yml

---

## 📚 Documentation Associée

- **Guide de tests:** `../docs/TESTS_INTEGRATION_FINANCE_WORKFLOW.md`
- **Architecture mobile:** `../docs/UNIONFLOW_DESIGN_V2.md`

---

**Créé:** 2026-03-14
**Dernière mise à jour:** 2026-03-14
