Extract Insta OF nodes
This commit is contained in:
@@ -2115,6 +2115,60 @@ def smoke_node_formatter_registration() -> None:
|
||||
_expect(sdxl_output[6].startswith("text("), "SDXL Formatter method changed unexpectedly")
|
||||
|
||||
|
||||
def smoke_node_insta_registration() -> None:
|
||||
required_nodes = [
|
||||
"SxCPInstaOFOptions",
|
||||
"SxCPInstaOFPromptPair",
|
||||
]
|
||||
for node_name in required_nodes:
|
||||
_expect(node_name in sxcp_nodes.NODE_CLASS_MAPPINGS, f"{node_name} missing from node registry")
|
||||
_expect(node_name in sxcp_nodes.NODE_DISPLAY_NAME_MAPPINGS, f"{node_name} missing from display registry")
|
||||
|
||||
options_node = sxcp_nodes.NODE_CLASS_MAPPINGS["SxCPInstaOFOptions"]
|
||||
options_inputs = options_node.INPUT_TYPES().get("required") or {}
|
||||
_expect("hardcore_detail_density" in options_inputs, "Insta/OF Options lost hardcore_detail_density input")
|
||||
_expect("tooltip" in options_inputs["hardcore_detail_density"][1], "Insta/OF Options tooltip injection missing")
|
||||
options_json = options_node().build(
|
||||
"same_as_hardcore",
|
||||
"couple",
|
||||
1,
|
||||
1,
|
||||
"lingerie_tease",
|
||||
"hardcore",
|
||||
True,
|
||||
True,
|
||||
0.45,
|
||||
0.85,
|
||||
"hybrid",
|
||||
"same_creator_same_room",
|
||||
"explicit_nude",
|
||||
"standard",
|
||||
"standard",
|
||||
"compact",
|
||||
"balanced",
|
||||
)[0]
|
||||
parsed_options = json.loads(options_json)
|
||||
_expect(parsed_options.get("softcore_cast") == "same_as_hardcore", "Insta/OF Options lost softcore cast")
|
||||
_expect(parsed_options.get("hardcore_cast") == "couple", "Insta/OF Options lost hardcore cast")
|
||||
_expect(parsed_options.get("hardcore_clothing_continuity") == "explicit_nude", "Insta/OF Options lost clothing continuity")
|
||||
|
||||
pair_output = sxcp_nodes.NODE_CLASS_MAPPINGS["SxCPInstaOFPromptPair"]().build(
|
||||
1,
|
||||
41,
|
||||
123,
|
||||
"any",
|
||||
"random",
|
||||
Trigger,
|
||||
True,
|
||||
options_json=options_json,
|
||||
)
|
||||
_expect_text("node_insta.softcore_prompt", pair_output[0], 20)
|
||||
_expect_text("node_insta.hardcore_prompt", pair_output[1], 20)
|
||||
pair = json.loads(pair_output[7])
|
||||
_expect_pair(pair, "node_insta_pair")
|
||||
_expect(pair.get("options", {}).get("hardcore_cast") == "couple", "Insta/OF Prompt Pair lost options metadata")
|
||||
|
||||
|
||||
def smoke_node_profile_filter_registration() -> None:
|
||||
required_nodes = [
|
||||
"SxCPGenerationProfile",
|
||||
@@ -2225,6 +2279,7 @@ SMOKE_CASES: list[tuple[str, Callable[[], None]]] = [
|
||||
("node_character_registration", smoke_node_character_registration),
|
||||
("node_hardcore_position_registration", smoke_node_hardcore_position_registration),
|
||||
("node_formatter_registration", smoke_node_formatter_registration),
|
||||
("node_insta_registration", smoke_node_insta_registration),
|
||||
("node_profile_filter_registration", smoke_node_profile_filter_registration),
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user