veza/apps/web/e2e/QUICK_FIX_ROLE.md
2025-12-22 22:00:50 +01:00

43 lines
1.4 KiB
Markdown

# 🚀 Quick Fix: Promouvoir l'utilisateur de test en "Artist"
## Problème
Les tests d'upload échouent avec `403 Forbidden: Content creation denied - insufficient role`.
**Cause :** L'utilisateur `user@example.com` a le rôle `user`, mais le backend exige `artist` pour uploader.
## Solution Rapide (1 commande)
### Si vous utilisez Docker :
```bash
docker exec -it veza_postgres psql -U veza -d veza -c "INSERT INTO roles (name, display_name, description) VALUES ('artist', 'Artist', 'Artist role') ON CONFLICT (name) DO NOTHING; INSERT INTO user_roles (user_id, role_id, role) SELECT u.id, r.id, 'artist' FROM users u CROSS JOIN roles r WHERE u.email = 'user@example.com' AND r.name = 'artist' ON CONFLICT (user_id, role) DO NOTHING; UPDATE users SET is_verified = true WHERE email = 'user@example.com';"
```
### Ou utilisez le script automatique :
```bash
cd apps/web/e2e
./setup-test-user-role.sh
```
## Vérification
Après avoir exécuté la commande, vérifiez :
```bash
docker exec -it veza_postgres psql -U veza -d veza -c "SELECT u.email, r.name as role, u.is_verified FROM users u LEFT JOIN user_roles ur ON u.id = ur.user_id LEFT JOIN roles r ON ur.role_id = r.id WHERE u.email = 'user@example.com';"
```
Vous devriez voir :
- `role`: `artist`
- `is_verified`: `true`
## Relancer les tests
```bash
cd apps/web
npm run test:e2e
```
Les tests d'upload devraient maintenant passer ! ✅