Skip to content

Commit e095de4

Browse files
committed
add putaway list page
1 parent 3b836cd commit e095de4

2 files changed

Lines changed: 68 additions & 0 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import { expect, Page } from '@playwright/test';
2+
3+
import BasePageModel from '@/pages/BasePageModel';
4+
5+
import PutawayListTable from './PutawayListTable';
6+
7+
class PutawayListPage extends BasePageModel {
8+
table: PutawayListTable;
9+
10+
constructor(page: Page) {
11+
super(page);
12+
13+
this.table = new PutawayListTable(page);
14+
}
15+
16+
async goToPage() {
17+
await this.page.goto('./order/list?orderType=PUTAWAY_ORDER&status=PENDING');
18+
}
19+
20+
async waitForResponse() {
21+
await this.page.waitForResponse('./api/stockMovements?**');
22+
}
23+
24+
async isLoaded() {
25+
await expect(
26+
this.page.getByRole('heading').getByText('List Putaways')
27+
).toBeVisible();
28+
}
29+
}
30+
31+
export default PutawayListPage;
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import { Locator, Page } from '@playwright/test';
2+
3+
import BasePageModel from '@/pages/BasePageModel';
4+
5+
class PutawayListTable extends BasePageModel {
6+
get table() {
7+
return this.page.getByRole('table');
8+
}
9+
10+
get rows() {
11+
return this.table.getByRole('row');
12+
}
13+
14+
row(index: number) {
15+
return new Row(this.page, this.rows.nth(index));
16+
}
17+
18+
get viewOrderDetailsButton() {
19+
return this.page
20+
.locator('.action-menu-item')
21+
.getByRole('link', { name: 'View order details' });
22+
}
23+
}
24+
25+
class Row extends BasePageModel {
26+
row: Locator;
27+
28+
constructor(page: Page, row: Locator) {
29+
super(page);
30+
this.row = row;
31+
}
32+
33+
get actionsButton() {
34+
return this.row.getByTestId('action-menu-0');
35+
}
36+
}
37+
export default PutawayListTable;

0 commit comments

Comments
 (0)