92 lines
3.3 KiB
TypeScript
92 lines
3.3 KiB
TypeScript
// Позитивный тест регистрации организации
|
||
// Включает в себя:
|
||
// Ввод валидных тестовых данных
|
||
// Получение кода в письме
|
||
// Ввод кода из письма (is_confirm)
|
||
// Переход на главную (через модальное окно)
|
||
|
||
import { test, expect } from '@playwright/test';
|
||
import { RegisterPage } from '../../../page-objects/RegisterPage';
|
||
import {
|
||
generateFirstName,
|
||
generateLastName,
|
||
generateMiddleName,
|
||
generateLogin,
|
||
generatePhone,
|
||
generateKPP,
|
||
generateINN,
|
||
generateShortOrgName,
|
||
generateFullOrgName
|
||
} from '../../../utils/userGenerator';
|
||
import {
|
||
createTempEmail,
|
||
waitForConfirmationCode
|
||
} from '../../../utils/mailTmApi';
|
||
|
||
test('Полная регистрация организации с подтверждением почты', async ({ page }) => {
|
||
await new Promise(r => setTimeout(r, 3000));
|
||
const registerPage = new RegisterPage(page);
|
||
|
||
const { email, token } = await createTempEmail();
|
||
|
||
const surname = generateLastName();
|
||
const name = generateFirstName();
|
||
const patronymic = generateMiddleName();
|
||
const directorFIO = `${surname} ${name} ${patronymic}`;
|
||
const login = generateLogin();
|
||
const phone = generatePhone();
|
||
const password = '!Test123456';
|
||
const shortName = generateShortOrgName();
|
||
const fullName = generateFullOrgName();
|
||
const address = 'г. Таганрог, ул. Тестовая, д. 1';
|
||
const kpp = generateKPP();
|
||
const inn = generateINN();
|
||
const site = 'https://test-org.ru';
|
||
const description = 'Абсолютно неуникальное тестовое описание';
|
||
const position = 'Генеральный директор';
|
||
const basis = 'закона';
|
||
const tg = 'https://t.me/test_user';
|
||
const vk = 'https://vk.com/test_user';
|
||
|
||
await registerPage.goto();
|
||
await registerPage.selectRole('Организация');
|
||
|
||
//Первый этап регистраци
|
||
await registerPage.fillLogin(login);
|
||
await registerPage.fillEmail(email);
|
||
await registerPage.fillPassword(password);
|
||
await registerPage.fillPasswordRepeat(password);
|
||
await registerPage.clickNextButton();
|
||
|
||
//Второй этап регистрации
|
||
await registerPage.fillShortName(shortName);
|
||
await registerPage.fillFullName(fullName);
|
||
await registerPage.fillAddress(address);
|
||
await registerPage.fillKPP(kpp);
|
||
await registerPage.fillINN(inn);
|
||
await registerPage.fillSite(site);
|
||
await registerPage.fillPhone(phone);
|
||
await registerPage.fillDescription(description);
|
||
await registerPage.clickNextButtonOrg();
|
||
|
||
//Третий этап регистрации
|
||
await registerPage.fillDirectorFIO(directorFIO);
|
||
await registerPage.fillPosition(position);
|
||
await registerPage.fillBasis(basis);
|
||
await registerPage.fillTelegram(tg);
|
||
await registerPage.fillVK(vk);
|
||
await registerPage.checkConsentCheckbox();
|
||
await registerPage.submitGeneral();
|
||
|
||
await expect(page).toHaveURL(/confirmation-code/);
|
||
const code = await waitForConfirmationCode(email, token, 'register', 60000);
|
||
|
||
await page.fill('input[name="code"]', code);
|
||
await page.click('button.RecoverPassword_button__5QDxM');
|
||
|
||
await registerPage.expectSuccessModal();
|
||
|
||
await expect(page).toHaveURL('https://rumc.dev.rdcenter.ru');
|
||
|
||
});
|