Files
ComfyUI_frontend/tests-ui/tests/nodeSearchService.test.ts
2024-07-18 10:13:05 -04:00

86 lines
1.6 KiB
TypeScript

import { NodeSearchService } from "@/services/nodeSearchService";
import { ComfyNodeDef } from "@/types/apiTypes";
const EXAMPLE_NODE_DEFS: ComfyNodeDef[] = [{
"input": {
"required": {
"ckpt_name": [
[
"model1.safetensors",
"model2.ckpt"
]
]
}
},
"output": [
"MODEL",
"CLIP",
"VAE"
],
"output_is_list": [
false,
false,
false
],
"output_name": [
"MODEL",
"CLIP",
"VAE"
],
"name": "CheckpointLoaderSimple",
"display_name": "Load Checkpoint",
"description": "",
"python_module": "nodes",
"category": "loaders",
"output_node": false,
},
{
"input": {
"required": {
"samples": [
"LATENT"
],
"batch_index": [
"INT",
{
"default": 0,
"min": 0,
"max": 63
}
],
"length": [
"INT",
{
"default": 1,
"min": 1,
"max": 64
}
]
}
},
"output": [
"LATENT"
],
"output_is_list": [
false
],
"output_name": [
"LATENT"
],
"name": "LatentFromBatch",
"display_name": "Latent From Batch",
"description": "",
"python_module": "nodes",
"category": "latent/batch",
"output_node": false
},
];
describe("nodeSearchService", () => {
it("searches with input filter", () => {
const service = new NodeSearchService(EXAMPLE_NODE_DEFS);
const inputFilter = service.getFilterById("input");
expect(service.searchNode("L", [[inputFilter, "LATENT"]])).toHaveLength(1);
expect(service.searchNode("L")).toHaveLength(2);
});
});