mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-02 22:37:32 +00:00
## Summary - add Playwright queue list fixture and coverage for toggle/count display - update queue overlay unit tests plus storybook stories for inline progress and job item - adjust useJobList expectations for ordered tasks main <-- https://github.com/Comfy-Org/ComfyUI_frontend/pull/7336 <-- https://github.com/Comfy-Org/ComfyUI_frontend/pull/7338 <-- https://github.com/Comfy-Org/ComfyUI_frontend/pull/7342 ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7342-Add-queue-overlay-tests-and-stories-2c66d73d365081ae8e32d6e34f87e1d9) by [Unito](https://www.unito.io)
58 lines
1.3 KiB
TypeScript
58 lines
1.3 KiB
TypeScript
import type { Page } from '@playwright/test'
|
|
import { expect } from '@playwright/test'
|
|
|
|
export class QueueList {
|
|
constructor(public readonly page: Page) {}
|
|
|
|
get toggleButton() {
|
|
return this.page.getByTestId('queue-toggle-button')
|
|
}
|
|
|
|
get inlineProgress() {
|
|
return this.page.getByTestId('queue-inline-progress')
|
|
}
|
|
|
|
get overlay() {
|
|
return this.page.getByTestId('queue-overlay')
|
|
}
|
|
|
|
get closeButton() {
|
|
return this.page.getByTestId('queue-overlay-close-button')
|
|
}
|
|
|
|
get jobItems() {
|
|
return this.page.getByTestId('queue-job-item')
|
|
}
|
|
|
|
get clearHistoryButton() {
|
|
return this.page.getByRole('button', { name: /Clear History/i })
|
|
}
|
|
|
|
async open() {
|
|
if (!(await this.overlay.isVisible())) {
|
|
await this.toggleButton.click()
|
|
await expect(this.overlay).toBeVisible()
|
|
}
|
|
}
|
|
|
|
async close() {
|
|
if (await this.overlay.isVisible()) {
|
|
await this.closeButton.click()
|
|
await expect(this.overlay).not.toBeVisible()
|
|
}
|
|
}
|
|
|
|
async getJobCount(state?: string) {
|
|
if (state) {
|
|
return await this.page
|
|
.locator(`[data-testid="queue-job-item"][data-job-state="${state}"]`)
|
|
.count()
|
|
}
|
|
return await this.jobItems.count()
|
|
}
|
|
|
|
getJobAction(actionKey: string) {
|
|
return this.page.getByTestId(`job-action-${actionKey}`)
|
|
}
|
|
}
|