import { test, expect } from '@playwright/test'; import fs from 'fs'; import path from 'path'; import { LoginPage } from '../../../page-objects/LoginPage'; import { ProfileApplicantPage } from '../../../page-objects/UsersAccount/ProfileApplicantPage'; test('UI: Личный кабинет абитуриента — заполнение профиля', async ({ page }) => { const user = JSON.parse(fs.readFileSync('temp/user.json', 'utf-8')); const loginPage = new LoginPage(page); const profilePage = new ProfileApplicantPage(page); // Авторизация await loginPage.goto(); await loginPage.fillLogin(user.login); await loginPage.fillPassword(user.password); await loginPage.submit(); await expect(page).toHaveURL(/.*\/account\/profile/); // Открытие редактирования базовой информации await profilePage.goto(); await profilePage.openBasicInfoEditor(); await profilePage.uploadAvatar(path.resolve('fixtures', 'avatar.png')); // добавь этот файл в проект await profilePage.fillCity('Таганрог'); await profilePage.saveBasicInfo(); // Редактирование представителя await profilePage.openRepresentativeEditor(); await profilePage.fillRepresentative( 'Мать', 'Иванова Мария Петровна', '+7 (900) 123-45-67' ); await profilePage.saveRepresentative(); // Редактирование инвалидности await profilePage.openDisabilityEditor(); await profilePage.selectDisability('Нарушение слуха'); await profilePage.selectDisabilityGroup('I группа'); await profilePage.saveDisabilityInfo(); // Проверка, что остались на профиле await expect(page).toHaveURL(/.*\/account\/profile/); });