mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-09 09:30:06 +00:00
Mostly minor changes to selectors Also fixes the glaringly obvious omission of the description field
63 lines
2.6 KiB
TypeScript
63 lines
2.6 KiB
TypeScript
import { expect } from '@playwright/test'
|
|
import { comfyPageFixture as test } from './ComfyPage'
|
|
|
|
test.describe('Documentation Sidebar', () => {
|
|
test.beforeEach(async ({ comfyPage }) => {
|
|
await comfyPage.setSetting('Comfy.UseNewMenu', 'Floating')
|
|
await comfyPage.loadWorkflow('default')
|
|
})
|
|
|
|
test.afterEach(async ({ comfyPage }) => {
|
|
const currentThemeId = await comfyPage.menu.getThemeId()
|
|
if (currentThemeId !== 'dark') {
|
|
await comfyPage.menu.toggleTheme()
|
|
}
|
|
await comfyPage.setSetting('Comfy.UseNewMenu', 'Disabled')
|
|
})
|
|
|
|
test('Sidebar registered', async ({ comfyPage }) => {
|
|
await expect(
|
|
comfyPage.page.locator('.documentation-tab-button')
|
|
).toBeVisible()
|
|
})
|
|
test('Parses help for basic node', async ({ comfyPage }) => {
|
|
await comfyPage.page.locator('.documentation-tab-button').click()
|
|
const docPane = comfyPage.page.locator('.sidebar-content-container')
|
|
//Check that each independently parsed element exists
|
|
await expect(docPane).toContainText('Load Checkpoint')
|
|
await expect(docPane).toContainText('Loads a diffusion model')
|
|
await expect(docPane).toContainText('The name of the checkpoint')
|
|
await expect(docPane).toContainText('The VAE model used')
|
|
})
|
|
test('Responds to hovering over node', async ({ comfyPage }) => {
|
|
await comfyPage.page.locator('.documentation-tab-button').click()
|
|
const docPane = comfyPage.page.locator('.sidebar-content-container')
|
|
await comfyPage.page.mouse.move(321, 593)
|
|
const tooltipTimeout = 500
|
|
await comfyPage.page.waitForTimeout(tooltipTimeout + 16)
|
|
await expect(comfyPage.page.locator('.node-tooltip')).not.toBeVisible()
|
|
await expect(
|
|
comfyPage.page.locator('.sidebar-content-container>div>div:nth-child(4)')
|
|
).toBeFocused()
|
|
})
|
|
test('Updates when a new node is selected', async ({ comfyPage }) => {
|
|
await comfyPage.page.locator('.documentation-tab-button').click()
|
|
const docPane = comfyPage.page.locator('.sidebar-content-container')
|
|
await comfyPage.page.mouse.click(557, 440)
|
|
await expect(docPane).not.toContainText('Load Checkpoint')
|
|
await expect(docPane).toContainText('CLIP Text Encode (Prompt)')
|
|
await expect(docPane).toContainText('The text to be encoded')
|
|
await expect(docPane).toContainText(
|
|
'A conditioning containing the embedded text'
|
|
)
|
|
})
|
|
test('Responds to a change in theme', async ({ comfyPage }) => {
|
|
await comfyPage.page.locator('.documentation-tab-button').click()
|
|
const docPane = comfyPage.page.locator('.sidebar-content-container')
|
|
comfyPage.menu.toggleTheme()
|
|
await expect(docPane).toHaveScreenshot(
|
|
'documentation-sidebar-light-theme.png'
|
|
)
|
|
})
|
|
})
|