| import { Page, Locator } from '@playwright/test'; |
| import { waitForElement, waitForElementHidden } from '../core/waiting'; |
|
|
| |
| |
| |
| export async function isCategoryAutocompleteListVisible(page: Page): Promise<boolean> { |
| const list = page.locator('[data-testid="category-autocomplete-list"]'); |
| return await list.isVisible(); |
| } |
|
|
| |
| |
| |
| export async function waitForCategoryAutocompleteList( |
| page: Page, |
| options?: { timeout?: number } |
| ): Promise<Locator> { |
| return await waitForElement(page, 'category-autocomplete-list', options); |
| } |
|
|
| |
| |
| |
| export async function waitForCategoryAutocompleteListHidden( |
| page: Page, |
| options?: { timeout?: number } |
| ): Promise<void> { |
| await waitForElementHidden(page, 'category-autocomplete-list', options); |
| } |
|
|
| |
| |
| |
| export async function clickCategoryOption(page: Page, categoryName: string): Promise<void> { |
| const optionTestId = `category-option-${categoryName.toLowerCase().replace(/\s+/g, '-')}`; |
| const option = page.locator(`[data-testid="${optionTestId}"]`); |
| await option.click(); |
| } |
|
|
| |
| |
| |
| export async function getCategoryOption(page: Page, categoryName: string): Promise<Locator> { |
| const optionTestId = `category-option-${categoryName.toLowerCase().replace(/\s+/g, '-')}`; |
| return page.locator(`[data-testid="${optionTestId}"]`); |
| } |
|
|
| |
| |
| |
| export async function clickCreateNewCategoryOption(page: Page): Promise<void> { |
| const option = page.locator('[data-testid="category-option-create-new"]'); |
| await option.click(); |
| } |
|
|
| |
| |
| |
| export async function getCreateNewCategoryOption(page: Page): Promise<Locator> { |
| return page.locator('[data-testid="category-option-create-new"]'); |
| } |
|
|