|
1 | 1 | import { test, expect, type Page } from '@playwright/test';
|
2 |
| -import {LoginPage} from '../infra/po/login'; |
| 2 | +import {LoginPage, OpenProjectPage} from '../infra/po/pages'; |
3 | 3 |
|
4 |
| -async function performLogin(page: Page) { |
5 |
| - const loginPage = new LoginPage(page); |
6 |
| - await loginPage.navigate(); |
7 |
| - await loginPage.clickOnSignInToggle(); |
8 |
| - await loginPage.fillUsername("admin"); |
9 |
| - await loginPage.fillPassword("adminadmin"); |
10 |
| - await loginPage.clickOnSignInBtn(); |
11 |
| - // await page.goto('http://localhost:8080/'); |
12 |
| - |
13 |
| - // await page.locator("span:has-text('Sign in')").click() |
14 |
| - // // Fill input[name="username"] |
15 |
| - // await page.locator('input[name="username"]').fill('admin'); |
16 | 4 |
|
17 |
| - // // Fill input[name="password"] |
18 |
| - // await page.locator('input[name="password"]').fill('adminadmin'); |
19 | 5 |
|
20 |
| - // // Click input:has-text("Sign in") |
21 |
| - // await Promise.all([ |
22 |
| - // page.locator('input:has-text("Sign in")').click(), |
23 |
| - // page.waitForNavigation(), |
24 |
| - // ]); |
25 |
| - |
| 6 | +async function performLogin(page: Page) { |
| 7 | + const loginPage = new LoginPage(page); |
| 8 | + await test.step('Performing login', async () => { |
| 9 | + await (await (await (await (await loginPage |
| 10 | + .navigate()) |
| 11 | + .clickOnSignInToggle()) |
| 12 | + .fillUsername("admin")) |
| 13 | + .fillPassword("adminadmin")) |
| 14 | + .clickOnSignInBtn(); |
| 15 | + await expect(page).toHaveURL('http://localhost:8080/'); |
26 | 16 |
|
27 |
| - await expect(page).toHaveURL('http://localhost:8080/'); |
28 |
| - |
| 17 | + }); |
29 | 18 | }
|
30 | 19 |
|
31 | 20 |
|
32 | 21 | test.describe('Task', () => {
|
33 | 22 | test.beforeEach(async ({ page }) => {
|
34 | 23 | await performLogin(page);
|
35 |
| - |
36 |
| - |
37 | 24 | });
|
| 25 | + |
38 | 26 | test('create task', async ({ page }) => {
|
39 |
| - await page.locator("#projects-menu i").click(); |
| 27 | + const openProjectPage = new OpenProjectPage(page); |
| 28 | + await openProjectPage.clickOnSelectAProjectToggle(); |
| 29 | + await openProjectPage.clickOnProjectName("Selenium project"); |
40 | 30 |
|
41 |
| - await page.locator("#ui-id-5 >> text=Selenium project").click(); |
42 | 31 | await page.locator("#main-menu-work-packages >> text=Work packages").click();
|
43 | 32 |
|
44 | 33 | await page.locator("text=Create Include projects >> [aria-label='Create new work package']").click();
|
|
0 commit comments