44 lines
1.4 KiB
Markdown
44 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 ! ✅
|