feat(security): CSRF protection, session revocation, login rate limiting (#524) #617
@@ -70,4 +70,16 @@ describe('login page', () => {
|
|||||||
.element(page.getByRole('link', { name: /passwort vergessen/i }))
|
.element(page.getByRole('link', { name: /passwort vergessen/i }))
|
||||||
.toHaveAttribute('href', '/forgot-password');
|
.toHaveAttribute('href', '/forgot-password');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('shows rate-limit alert with clock icon when rateLimited is true', async () => {
|
||||||
|
render(LoginPage, {
|
||||||
|
props: {
|
||||||
|
data: { registered: false },
|
||||||
|
form: { error: 'Zu viele Anmeldeversuche.', rateLimited: true }
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
await expect.element(page.getByRole('alert')).toBeVisible();
|
||||||
|
await expect.element(page.getByText('Zu viele Anmeldeversuche.')).toBeVisible();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user