mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-03-07 06:00:03 +00:00
- Add 'this: ExpectMatcherState' to ComfyPage.ts makeMatcher function - Add type annotations to parameters (slot, comfyPage, w, inputs) - Add 'as any' for ExtensionManager dynamic properties (workflow, focusMode, colorPalette, queueSettings) - Fix keybindings import paths to use '/types' suffix - Cast Subgraph types and CanvasPointerEvent in SubgraphHelper - Fix test setting IDs with 'as any' in useSettingSearch, extensionAPI specs - Fix AppReadiness, colorPalette, featureFlags type issues - Replace removed ComfyPage properties with DefaultGraphPositions - Remove unused _canvas parameter from ClipboardHelper - Add non-null assertions for app, vaeInput, convertedInput Reduces browser_tests typecheck errors from 72 to 0. Amp-Thread-ID: https://ampcode.com/threads/T-019c17a3-2482-7115-8e42-ba0bbb0c9cda Co-authored-by: Amp <amp@ampcode.com>
58 lines
2.2 KiB
TypeScript
58 lines
2.2 KiB
TypeScript
import {
|
|
comfyExpect as expect,
|
|
comfyPageFixture as test
|
|
} from '../../../fixtures/ComfyPage'
|
|
|
|
test.describe('Vue Widget Reactivity', () => {
|
|
test.beforeEach(async ({ comfyPage }) => {
|
|
await comfyPage.settings.setSetting('Comfy.VueNodes.Enabled', true)
|
|
await comfyPage.vueNodes.waitForNodes()
|
|
})
|
|
test('Should display added widgets', async ({ comfyPage }) => {
|
|
const loadCheckpointNode = comfyPage.page.locator(
|
|
'css=[data-testid="node-body-4"] > .lg-node-widgets > div'
|
|
)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['4']
|
|
node.widgets.push(node.widgets[0])
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(2)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['4']
|
|
node.widgets[2] = node.widgets[0]
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(3)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['4']
|
|
node.widgets.splice(0, 0, node.widgets[0])
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(4)
|
|
})
|
|
test('Should hide removed widgets', async ({ comfyPage }) => {
|
|
const loadCheckpointNode = comfyPage.page.locator(
|
|
'css=[data-testid="node-body-3"] > .lg-node-widgets > div'
|
|
)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['3']
|
|
node.widgets.pop()
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(5)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['3']
|
|
node.widgets.length--
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(4)
|
|
await comfyPage.page.evaluate(() => {
|
|
const graph = window.graph as { _nodes_by_id: Record<string, any> }
|
|
const node = graph._nodes_by_id['3']
|
|
node.widgets.splice(0, 1)
|
|
})
|
|
await expect(loadCheckpointNode).toHaveCount(3)
|
|
})
|
|
})
|