Merge pull request #38 from R0m1k3/claude/mfa-lever-barriere-enrolement

Alléger l'annuaire
This commit is contained in:
LogiFlow authored and GitHub committed 2026-08-10 16:17:56 +02:00
commit b49ceb1f29
11 files changed
+225 -124

No files matched your search

+6
View File
@@ -113,6 +113,9 @@ test('une pièce sans politique n’est jamais purgée', async ({ page }) => {
// compte, et une pièce partagée verrait son sort décidé par un autre test.
const suffix = `${Date.now()}-garde`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const create = page.locator('form').filter({ hasText: 'Ajouter' });
await create.getByLabel('Prénom').fill('Garde');
await create.getByLabel('Nom', { exact: true }).fill(`Garde${suffix}`);
@@ -167,6 +170,9 @@ test('une pièce échue est effectivement effacée', async ({ page }) => {
await expect(page.getByText('Durée enregistrée.')).toBeVisible();
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const create = page.locator('form').filter({ hasText: 'Ajouter' });
await create.getByLabel('Prénom').fill('Purge');
await create.getByLabel('Nom', { exact: true }).fill(`Purge${suffix}`);
+3
View File
@@ -27,6 +27,9 @@ async function createEmployee(page: Page, tag: string) {
const lastName = `Dossier${suffix}`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.getByLabel('Prénom').fill('Inès');
await form.getByLabel('Nom', { exact: true }).fill(lastName);
+11 -4
View File
@@ -14,6 +14,9 @@ async function createEmployee(page: Page) {
const lastName = `Fiche${suffix}`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.getByLabel('Prénom').fill('Awa');
await form.getByLabel('Nom', { exact: true }).fill(lastName);
@@ -99,6 +102,9 @@ test('une embauche pose le contrat en même temps que le dossier', async ({
const lastName = `Embauche${suffix}`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.getByLabel('Prénom').fill('Sofia');
await form.getByLabel('Nom', { exact: true }).fill(lastName);
@@ -113,10 +119,11 @@ test('une embauche pose le contrat en même temps que le dossier', async ({
await form.getByRole('button', { name: 'Ajouter' }).click();
await expect(page.getByText('Salarié ajouté.')).toBeVisible();
// Le contrat est visible depuis l'annuaire, sans passer par la fiche.
await expect(page.getByRole('row', { name: new RegExp(lastName) })).toContainText(
'CDI',
);
// Le rattachement paraît dans l'annuaire : un dossier sans contrat y porte
// « Sans contrat », celui-ci porte son établissement.
await expect(
page.getByRole('row', { name: new RegExp(lastName) }),
).not.toContainText('Sans contrat');
await page.getByRole('link', { name: new RegExp(lastName) }).click();
// Le bandeau porte le contrat : c'est ce qui distingue un dossier embauché
+3
View File
@@ -21,6 +21,9 @@ async function createEmployee(page: Page, tag: string) {
const email = `sacha.${suffix}@exemple.test`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.getByLabel('Prénom').fill(firstName);
await form.getByLabel('Nom', { exact: true }).fill(lastName);
+3
View File
@@ -55,6 +55,9 @@ test('un salarié sans compte applicatif est créable', async ({ page }) => {
// deux passages, et un nom fixe finirait par désigner plusieurs salariés.
const matricule = `E9${Date.now() % 100000}`;
const nom = `Sanscompte${matricule}`;
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.locator('input[name="firstName"]').fill('Sans');
await form.locator('input[name="lastName"]').fill(nom);
+3
View File
@@ -158,6 +158,9 @@ async function inviteWithRole(page: Page, roleLabel: string) {
const lastName = `Role${suffix}`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const create = page.locator('form').filter({ hasText: 'Ajouter' });
await create.getByLabel('Prénom').fill('Alix');
await create.getByLabel('Nom', { exact: true }).fill(lastName);
+3
View File
@@ -151,6 +151,9 @@ async function createAccessibleEmployee(page: Page) {
const email = `facteur.${suffix}@exemple.test`;
await page.goto('/equipe');
// Le formulaire d’embauche n’est plus posé au bas de la liste : il s’ouvre
// en modale, à la demande.
await page.getByRole('button', { name: 'Ajouter un collaborateur' }).click();
const form = page.locator('form').filter({ hasText: 'Ajouter' });
await form.getByLabel('Prénom').fill('Noé');
await form.getByLabel('Nom', { exact: true }).fill(lastName);