diff --git a/src/frontend/apps/e2e/__tests__/app-impress/pad-tools.spec.ts b/src/frontend/apps/e2e/__tests__/app-impress/pad-tools.spec.ts index b529ee31..74e662b5 100644 --- a/src/frontend/apps/e2e/__tests__/app-impress/pad-tools.spec.ts +++ b/src/frontend/apps/e2e/__tests__/app-impress/pad-tools.spec.ts @@ -14,11 +14,12 @@ test.describe('Pad Tools', () => { page, browserName, }) => { + const [randomPad] = await createPad(page, 'pad-editor', browserName, 1); + const downloadPromise = page.waitForEvent('download', (download) => { - return download.suggestedFilename().includes('impress-document.pdf'); + return download.suggestedFilename().includes(`${randomPad}.pdf`); }); - const [randomPad] = await createPad(page, 'pad-editor', browserName, 1); await expect(page.locator('h2').getByText(randomPad)).toBeVisible(); await page.locator('.ProseMirror.bn-editor').click(); @@ -38,13 +39,11 @@ test.describe('Pad Tools', () => { .click(); const download = await downloadPromise; - expect(download.suggestedFilename()).toBe('impress-document.pdf'); + expect(download.suggestedFilename()).toBe(`${randomPad}.pdf`); const pdfBuffer = await cs.toBuffer(await download.createReadStream()); const pdfText = (await pdf(pdfBuffer)).text; - expect(pdfText).toContain('Monsieur le Premier Ministre'); // This is the template text - expect(pdfText).toContain('La directrice'); // This is the template text expect(pdfText).toContain('Hello World'); // This is the pad text }); diff --git a/src/frontend/apps/impress/src/features/pads/pad-tools/components/ModalPDF.tsx b/src/frontend/apps/impress/src/features/pads/pad-tools/components/ModalPDF.tsx index 09984538..08ea4d3d 100644 --- a/src/frontend/apps/impress/src/features/pads/pad-tools/components/ModalPDF.tsx +++ b/src/frontend/apps/impress/src/features/pads/pad-tools/components/ModalPDF.tsx @@ -57,7 +57,14 @@ export const ModalPDF = ({ onClose, templateOptions, pad }: ModalPDFProps) => { return; } - downloadFile(pdf, 'impress-document.pdf'); + // normalize title + const title = pad.title + .toLowerCase() + .normalize('NFD') + .replace(/[\u0300-\u036f]/g, '') + .replace(/\s/g, '-'); + + downloadFile(pdf, `${title}.pdf`); toast(t('Your pdf was downloaded succesfully'), VariantType.SUCCESS);