25 lines
942 B
TypeScript
25 lines
942 B
TypeScript
import { expect, test } from '@playwright/test';
|
|
import { zipSync } from 'fflate';
|
|
import { createPdf, dropFiles, trackPageErrors } from './helpers';
|
|
|
|
test('start page exposes only working tools and forwards a dropped ZIP to beA', async ({
|
|
page
|
|
}) => {
|
|
const pageErrors = trackPageErrors(page);
|
|
const pdf = await createPdf(1, 'beA');
|
|
const zip = Buffer.from(zipSync({ 'anlage.pdf': pdf }));
|
|
|
|
await page.goto('/');
|
|
await expect(page.getByRole('heading', { name: 'Werkzeugkasten für beA' })).toBeVisible();
|
|
await expect(page.getByRole('link', { name: /Stempeln/ })).toBeVisible();
|
|
await expect(page.getByRole('link', { name: /Signieren/ })).toHaveCount(0);
|
|
|
|
await dropFiles(page, 'window', [
|
|
{ name: 'bea-archiv.zip', mimeType: 'application/zip', buffer: zip }
|
|
]);
|
|
|
|
await expect(page).toHaveURL(/\/tools\/bea$/);
|
|
await expect(page.getByText('1 lose Datei')).toBeVisible({ timeout: 15_000 });
|
|
expect(pageErrors).toEqual([]);
|
|
});
|