Add native ComfyUI list output converter
This commit is contained in:
@@ -29,16 +29,37 @@ EXPECTED_IDS = {
|
||||
"BytesFromListIdx",
|
||||
"IntFromListIdx",
|
||||
"FloatFromListIdx",
|
||||
"ETKListToComfyList",
|
||||
}
|
||||
|
||||
|
||||
def test_exact_workflow_ids_are_registered():
|
||||
assert set(PACKAGE.NODE_CLASS_MAPPINGS) == EXPECTED_IDS
|
||||
assert PACKAGE.NODE_DISPLAY_NAME_MAPPINGS == {
|
||||
"AudioFromListIdx": "Audio From List Index"
|
||||
"AudioFromListIdx": "Audio From List Index",
|
||||
"ETKListToComfyList": "List To ComfyUI List",
|
||||
}
|
||||
|
||||
|
||||
def test_etk_list_to_comfy_list_uses_native_list_output_contract():
|
||||
node = PACKAGE.ETKListToComfyList
|
||||
source = ["first", {"second": 2}, 3]
|
||||
|
||||
assert node.INPUT_TYPES() == {
|
||||
"required": {"items": ("LIST", {"default": []})}
|
||||
}
|
||||
assert node.RETURN_NAMES == ("items",)
|
||||
assert node.OUTPUT_IS_LIST == (True,)
|
||||
assert node.CATEGORY == "ETK/List"
|
||||
assert node().convert(source) == (source,)
|
||||
assert node().convert(source)[0] is source
|
||||
assert node().convert([]) == ([],)
|
||||
assert (node.RETURN_TYPES[0] != "IMAGE") is False
|
||||
|
||||
with pytest.raises(TypeError, match="items must be a LIST"):
|
||||
node().convert("not-a-list")
|
||||
|
||||
|
||||
def test_etk_schema_and_selection_contracts():
|
||||
image = PACKAGE.ImageFromListIdx
|
||||
latent = PACKAGE.LatentFromListIdx
|
||||
|
||||
Reference in New Issue
Block a user