veza/apps/web/e2e/setup-test-user-role.sql
2025-12-22 22:00:50 +01:00

40 lines
1.4 KiB
SQL

-- Script SQL pour promouvoir l'utilisateur de test en "artist"
-- Ce script doit être exécuté AVANT les tests E2E pour permettre les uploads
-- Option 1: Mettre à jour directement le rôle dans la table users (si le champ existe)
-- UPDATE users SET role = 'artist' WHERE email = 'user@example.com';
-- Option 2: Ajouter le rôle via la table user_roles (recommandé si RBAC est utilisé)
-- D'abord, vérifier si le rôle "artist" existe dans la table roles
-- NOTE: display_name est NOT NULL, il faut le fournir
INSERT INTO roles (name, display_name, description)
VALUES ('artist', 'Artist', 'Artist role for content creation')
ON CONFLICT (name) DO NOTHING;
-- Ensuite, ajouter le rôle à l'utilisateur
-- NOTE: La colonne 'role' est aussi requise dans user_roles (pour compatibilité)
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;
-- Vérifier l'email de l'utilisateur (nécessaire pour certains endpoints)
UPDATE users
SET is_verified = true
WHERE email = 'user@example.com';
-- Vérification
SELECT
u.email,
u.id as user_id,
r.name as role_name
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';