mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-20 06:20:11 +00:00
## Summary Adds additional test coverage for empty state/welcome screen/connect outputs/vue nodes auto switch ## Changes - **What**: - add tests ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-11194-test-App-mode-additional-app-mode-coverage-3416d73d365081ca91d0ed61de19f840) by [Unito](https://www.unito.io)
71 lines
2.1 KiB
TypeScript
71 lines
2.1 KiB
TypeScript
import {
|
|
comfyPageFixture as test,
|
|
comfyExpect as expect
|
|
} from '@e2e/fixtures/ComfyPage'
|
|
import { setupBuilder } from '@e2e/helpers/builderTestUtils'
|
|
|
|
test.describe('App mode arrange step', { tag: '@ui' }, () => {
|
|
test.beforeEach(async ({ comfyPage }) => {
|
|
await comfyPage.appMode.enableLinearMode()
|
|
await comfyPage.appMode.suppressVueNodeSwitchPopup()
|
|
})
|
|
|
|
test('Placeholder is shown when outputs are configured but no run has happened', async ({
|
|
comfyPage
|
|
}) => {
|
|
const { appMode } = comfyPage
|
|
|
|
await setupBuilder(comfyPage)
|
|
await appMode.steps.goToPreview()
|
|
|
|
await expect(appMode.steps.previewButton).toHaveAttribute(
|
|
'aria-current',
|
|
'step'
|
|
)
|
|
await expect(appMode.arrangePreview).toBeVisible()
|
|
await expect(appMode.arrangeNoOutputs).toBeHidden()
|
|
})
|
|
|
|
test('No-outputs state navigates to the Outputs step via "Switch to Outputs"', async ({
|
|
comfyPage
|
|
}) => {
|
|
const { appMode } = comfyPage
|
|
|
|
await appMode.enterBuilder()
|
|
await appMode.steps.goToPreview()
|
|
|
|
await expect(appMode.arrangeNoOutputs).toBeVisible()
|
|
await expect(appMode.arrangePreview).toBeHidden()
|
|
|
|
await appMode.arrangeSwitchToOutputsButton.click()
|
|
|
|
await expect(appMode.steps.outputsButton).toHaveAttribute(
|
|
'aria-current',
|
|
'step'
|
|
)
|
|
await expect(appMode.arrangeNoOutputs).toBeHidden()
|
|
})
|
|
|
|
test('Connect-output popover from preview step navigates to the Outputs step', async ({
|
|
comfyPage
|
|
}) => {
|
|
const { appMode } = comfyPage
|
|
|
|
await appMode.enterBuilder()
|
|
// From a non-select step (preview/arrange), the popover surfaces a
|
|
// "Switch to Outputs" shortcut alongside cancel.
|
|
await appMode.steps.goToPreview()
|
|
|
|
await appMode.footer.saveAsButton.click()
|
|
await expect(appMode.connectOutputPopover).toBeVisible()
|
|
await expect(appMode.connectOutputSwitchButton).toBeVisible()
|
|
|
|
await appMode.connectOutputSwitchButton.click()
|
|
await expect(appMode.connectOutputPopover).toBeHidden()
|
|
await expect(appMode.steps.outputsButton).toHaveAttribute(
|
|
'aria-current',
|
|
'step'
|
|
)
|
|
})
|
|
})
|