mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2025-04-19 10:53:29 +00:00
Fix internal reroutes connected to other groups
This commit is contained in:
parent
97015b6b38
commit
9aaf368a41
@ -383,6 +383,32 @@ describe("group node", () => {
|
|||||||
getOutput([nodes.pos.id, nodes.neg.id, nodes.empty.id, nodes.sampler.id])
|
getOutput([nodes.pos.id, nodes.neg.id, nodes.empty.id, nodes.sampler.id])
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
test("groups can connect to each other via internal reroutes", async () => {
|
||||||
|
const { ez, graph, app } = await start();
|
||||||
|
|
||||||
|
const latent = ez.EmptyLatentImage();
|
||||||
|
const vae = ez.VAELoader();
|
||||||
|
const latentReroute = ez.Reroute();
|
||||||
|
const vaeReroute = ez.Reroute();
|
||||||
|
|
||||||
|
latent.outputs[0].connectTo(latentReroute.inputs[0]);
|
||||||
|
vae.outputs[0].connectTo(vaeReroute.inputs[0]);
|
||||||
|
|
||||||
|
const group1 = await convertToGroup(app, graph, "test", [latentReroute, vaeReroute]);
|
||||||
|
group1.menu.Clone.call();
|
||||||
|
expect(app.graph._nodes).toHaveLength(4);
|
||||||
|
const group2 = graph.find(app.graph._nodes[3]);
|
||||||
|
expect(group2.node.type).toEqual("workflow/test");
|
||||||
|
expect(group2.id).not.toEqual(group1.id);
|
||||||
|
|
||||||
|
group1.outputs.VAE.connectTo(group2.inputs.VAE);
|
||||||
|
group1.outputs.LATENT.connectTo(group2.inputs.LATENT);
|
||||||
|
|
||||||
|
const decode = ez.VAEDecode(group2.outputs.LATENT, group2.outputs.VAE);
|
||||||
|
ez.PreviewImage(decode.outputs[0]);
|
||||||
|
|
||||||
|
expect((await graph.toPrompt()).output).toEqual({});
|
||||||
|
});
|
||||||
test("displays generated image on group node", async () => {
|
test("displays generated image on group node", async () => {
|
||||||
const { ez, graph, app } = await start();
|
const { ez, graph, app } = await start();
|
||||||
const nodes = createDefaultWorkflow(ez, graph);
|
const nodes = createDefaultWorkflow(ez, graph);
|
||||||
|
@ -602,6 +602,10 @@ export class GroupNodeHandler {
|
|||||||
innerNode = innerNode.getInputNode(0);
|
innerNode = innerNode.getInputNode(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (l && GroupNodeHandler.isGroupNode(innerNode)) {
|
||||||
|
return innerNode.updateLink(l);
|
||||||
|
}
|
||||||
|
|
||||||
link.origin_id = innerNode.id;
|
link.origin_id = innerNode.id;
|
||||||
link.origin_slot = l?.origin_slot ?? output.slot;
|
link.origin_slot = l?.origin_slot ?? output.slot;
|
||||||
return link;
|
return link;
|
||||||
|
Loading…
Reference in New Issue
Block a user