34 lines
1.3 KiB
TypeScript
34 lines
1.3 KiB
TypeScript
import { test, expect } from '@playwright/test';
|
|
import { RecoverPage } from '../../../page-objects/RecoverPage';
|
|
import { users, recovery } from '../../../utils/test-data';
|
|
|
|
test.describe('Восстановление пароля — позитивные сценарии', () => {
|
|
|
|
test('Пользователь успешно восстанавливает пароль', async ({ page }) => {
|
|
const recoverPage = new RecoverPage(page);
|
|
|
|
const email = recovery.emailExists;
|
|
const verificationCode = recovery.verificationCode;
|
|
const newPassword = users.newPassword.password;
|
|
|
|
// 1. Переход на страницу восстановления
|
|
await recoverPage.goto();
|
|
|
|
// 2. Ввод email
|
|
await recoverPage.enterEmail(email);
|
|
await expect(page).toHaveURL(/\/recoverpassword\/checkemail/);
|
|
|
|
// 3. Ввод 6-значного кода
|
|
await recoverPage.enterVerificationCode(verificationCode);
|
|
|
|
// 4. Ввод нового пароля
|
|
await expect(recoverPage.newPasswordInput).toBeVisible();
|
|
await recoverPage.enterNewPassword(newPassword, newPassword);
|
|
|
|
// 5. Ожидаем редирект на страницу авторизации
|
|
await expect(page).toHaveURL('/login/authorization');
|
|
await expect(page.getByRole('button', { name: 'Войти', exact: true })).toBeVisible();
|
|
});
|
|
|
|
});
|