Merge branch 'claude/mfa-lever-barriere-enrolement'
This commit is contained in:
commit
e27d61dd4c
13 files changed
+827
-27
No files matched your search
@@ -0,0 +1,46 @@
|
||||
import { expect, test } from '@playwright/test';
|
||||
|
||||
/**
|
||||
* Registre unique du personnel — édition.
|
||||
*
|
||||
* Ce qui est éprouvé n'est pas la mise en page, mais qu'un fichier sorte et
|
||||
* qu'il porte le bon établissement : un registre édité pour le mauvais site ne
|
||||
* répond à aucune demande d'inspection.
|
||||
*/
|
||||
|
||||
test('le registre s’édite par établissement', async ({ page }) => {
|
||||
await page.goto('/equipe');
|
||||
|
||||
await page.getByRole('button', { name: 'Registre unique du personnel' }).click();
|
||||
await expect(
|
||||
page.getByRole('heading', {
|
||||
name: 'Téléchargez votre registre unique du personnel',
|
||||
}),
|
||||
).toBeVisible();
|
||||
|
||||
// Sans établissement, rien à télécharger : le registre se tient par site.
|
||||
const download = page.getByRole('link', { name: 'Télécharger' });
|
||||
await expect(download).toHaveAttribute('aria-disabled', 'true');
|
||||
|
||||
const select = page.getByLabel('Établissement pour lequel éditer le registre');
|
||||
const value = await select.locator('option').nth(1).getAttribute('value');
|
||||
await select.selectOption(value!);
|
||||
|
||||
const started = page.waitForEvent('download');
|
||||
await download.click();
|
||||
const file = await started;
|
||||
|
||||
expect(file.suggestedFilename()).toMatch(/^RUP - .+\.pdf$/);
|
||||
|
||||
// Le contenu est bien un PDF, pas une page d'erreur renvoyée en 200.
|
||||
const path = await file.path();
|
||||
const { readFileSync } = await import('node:fs');
|
||||
expect(readFileSync(path).subarray(0, 5).toString()).toBe('%PDF-');
|
||||
});
|
||||
|
||||
test('l’adresse du registre refuse un établissement absent', async ({
|
||||
page,
|
||||
}) => {
|
||||
const response = await page.goto('/equipe/registre');
|
||||
expect(response?.status()).toBe(400);
|
||||
});
|
||||
Reference in new issue
Block a user