import { Page, Locator } from "@playwright/test"; /** * Get the follow-up button for a waiting_approval feature */ export async function getFollowUpButton( page: Page, featureId: string ): Promise { return page.locator(`[data-testid="follow-up-${featureId}"]`); } /** * Click the follow-up button for a waiting_approval feature */ export async function clickFollowUpButton( page: Page, featureId: string ): Promise { const button = page.locator(`[data-testid="follow-up-${featureId}"]`); await button.click(); } /** * Check if the follow-up button is visible for a feature */ export async function isFollowUpButtonVisible( page: Page, featureId: string ): Promise { const button = page.locator(`[data-testid="follow-up-${featureId}"]`); return await button.isVisible().catch(() => false); } /** * Get the commit button for a waiting_approval feature */ export async function getCommitButton( page: Page, featureId: string ): Promise { return page.locator(`[data-testid="commit-${featureId}"]`); } /** * Click the commit button for a waiting_approval feature */ export async function clickCommitButton( page: Page, featureId: string ): Promise { const button = page.locator(`[data-testid="commit-${featureId}"]`); await button.click(); } /** * Check if the commit button is visible for a feature */ export async function isCommitButtonVisible( page: Page, featureId: string ): Promise { const button = page.locator(`[data-testid="commit-${featureId}"]`); return await button.isVisible().catch(() => false); } /** * Get the waiting_approval kanban column */ export async function getWaitingApprovalColumn(page: Page): Promise { return page.locator('[data-testid="kanban-column-waiting_approval"]'); } /** * Check if the waiting_approval column is visible */ export async function isWaitingApprovalColumnVisible( page: Page ): Promise { const column = page.locator('[data-testid="kanban-column-waiting_approval"]'); return await column.isVisible().catch(() => false); }