mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-05-12 16:56:23 +00:00
## Summary Add Playwright e2e tests for the node replacement feature (swap nodes UI in the errors tab). ## Changes - **What**: 6 e2e test cases across two describe blocks covering single and multi-type node replacement flows. Tests verify swap nodes group visibility, in-place replacement, widget value preservation, Replace All across multiple types, output connection preservation, and success toast display. Includes typed mock data for `/api/node_replacements` and two workflow fixture files with fake missing node types mapped to real core nodes. ## Review Focus - Mock setup pattern in `setupNodeReplacement` — enables feature flag via `page.evaluate` and routes the API endpoint - Workflow fixture design — uses fake node types (E2E_OldSampler, E2E_OldUpscaler) that map to real registered types (KSampler, ImageScaleBy) - Assertion coverage for link preservation after replacement ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-11242-test-add-e2e-tests-for-node-replacement-flows-3426d73d3650811e87d7f0d96fd66433) by [Unito](https://www.unito.io) --------- Co-authored-by: Connor Byrne <c.byrne@comfy.org>
69 lines
1.7 KiB
JSON
69 lines
1.7 KiB
JSON
{
|
|
"last_node_id": 4,
|
|
"last_link_id": 2,
|
|
"nodes": [
|
|
{
|
|
"id": 1,
|
|
"type": "E2E_OldSampler",
|
|
"pos": [100, 100],
|
|
"size": [400, 262],
|
|
"flags": {},
|
|
"order": 0,
|
|
"mode": 0,
|
|
"inputs": [
|
|
{ "name": "model", "type": "MODEL", "link": null },
|
|
{ "name": "positive", "type": "CONDITIONING", "link": null },
|
|
{ "name": "negative", "type": "CONDITIONING", "link": null },
|
|
{ "name": "latent_image", "type": "LATENT", "link": null }
|
|
],
|
|
"outputs": [
|
|
{
|
|
"name": "LATENT",
|
|
"type": "LATENT",
|
|
"links": [],
|
|
"slot_index": 0
|
|
}
|
|
],
|
|
"properties": { "Node name for S&R": "E2E_OldSampler" },
|
|
"widgets_values": [42, 20, 7, "euler", "normal"]
|
|
},
|
|
{
|
|
"id": 2,
|
|
"type": "E2E_OldUpscaler",
|
|
"pos": [500, 100],
|
|
"size": [400, 200],
|
|
"flags": {},
|
|
"order": 1,
|
|
"mode": 0,
|
|
"inputs": [{ "name": "image", "type": "IMAGE", "link": null }],
|
|
"outputs": [
|
|
{
|
|
"name": "IMAGE",
|
|
"type": "IMAGE",
|
|
"links": [2],
|
|
"slot_index": 0
|
|
}
|
|
],
|
|
"properties": { "Node name for S&R": "E2E_OldUpscaler" },
|
|
"widgets_values": ["lanczos", 1.5]
|
|
},
|
|
{
|
|
"id": 3,
|
|
"type": "SaveImage",
|
|
"pos": [900, 100],
|
|
"size": [400, 200],
|
|
"flags": {},
|
|
"order": 2,
|
|
"mode": 0,
|
|
"inputs": [{ "name": "images", "type": "IMAGE", "link": 2 }],
|
|
"properties": { "Node name for S&R": "SaveImage" },
|
|
"widgets_values": ["ComfyUI"]
|
|
}
|
|
],
|
|
"links": [[2, 2, 0, 3, 0, "IMAGE"]],
|
|
"groups": [],
|
|
"config": {},
|
|
"extra": { "ds": { "scale": 1, "offset": [0, 0] } },
|
|
"version": 0.4
|
|
}
|