mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-24 14:42:11 -03:00
refactor(nodes): standardize node class names with LM suffix
Rename all node classes to use consistent 'LM' suffix pattern: - LoraCyclerNode → LoraCyclerLM - LoraManagerLoader → LoraLoaderLM - LoraManagerTextLoader → LoraTextLoaderLM - LoraStacker → LoraStackerLM - LoraRandomizerNode → LoraRandomizerLM - LoraPoolNode → LoraPoolLM - WanVideoLoraSelectFromText → WanVideoLoraTextSelectLM - DebugMetadata → DebugMetadataLM - TriggerWordToggle → TriggerWordToggleLM - PromptLoraManager → PromptLM Updated: - Core node class definitions (9 files) - NODE_CLASS_MAPPINGS in __init__.py - Node type mappings in node_extractors.py - All related test imports and references - Logger prefixes for consistency Frontend extension names remain unchanged (LoraManager.LoraStacker, etc.)
This commit is contained in:
@@ -129,22 +129,22 @@ def test_metadata_registry_caches_and_rehydrates(populated_registry):
|
||||
def test_lora_manager_cache_updates_when_loras_removed(metadata_registry):
|
||||
import nodes
|
||||
|
||||
class LoraManagerLoader: # type: ignore[too-many-ancestors]
|
||||
__name__ = "LoraManagerLoader"
|
||||
class LoraLoaderLM: # type: ignore[too-many-ancestors]
|
||||
__name__ = "LoraLoaderLM"
|
||||
|
||||
nodes.NODE_CLASS_MAPPINGS["LoraManagerLoader"] = LoraManagerLoader
|
||||
nodes.NODE_CLASS_MAPPINGS["LoraLoaderLM"] = LoraLoaderLM
|
||||
|
||||
prompt_graph = {
|
||||
"lora_node": {"class_type": "LoraManagerLoader", "inputs": {}},
|
||||
"lora_node": {"class_type": "LoraLoaderLM", "inputs": {}},
|
||||
}
|
||||
prompt = SimpleNamespace(original_prompt=prompt_graph)
|
||||
cache_key = "lora_node:LoraManagerLoader"
|
||||
cache_key = "lora_node:LoraLoaderLM"
|
||||
|
||||
metadata_registry.start_collection("prompt1")
|
||||
metadata_registry.set_current_prompt(prompt)
|
||||
metadata_registry.record_node_execution(
|
||||
"lora_node",
|
||||
"LoraManagerLoader",
|
||||
"LoraLoaderLM",
|
||||
{"loras": [[{"name": "foo", "strength": 0.8, "active": True}]]},
|
||||
None,
|
||||
)
|
||||
@@ -152,7 +152,7 @@ def test_lora_manager_cache_updates_when_loras_removed(metadata_registry):
|
||||
|
||||
metadata_registry.start_collection("prompt2")
|
||||
metadata_registry.set_current_prompt(prompt)
|
||||
metadata_registry.record_node_execution("lora_node", "LoraManagerLoader", {"loras": [[]]}, None)
|
||||
metadata_registry.record_node_execution("lora_node", "LoraLoaderLM", {"loras": [[]]}, None)
|
||||
|
||||
assert cache_key not in metadata_registry.node_cache
|
||||
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
"""Tests for LoraRandomizerNode roll_mode functionality"""
|
||||
"""Tests for LoraRandomizerLM roll_mode functionality"""
|
||||
|
||||
from unittest.mock import AsyncMock
|
||||
|
||||
import pytest
|
||||
|
||||
from py.nodes.lora_randomizer import LoraRandomizerNode
|
||||
from py.nodes.lora_randomizer import LoraRandomizerLM
|
||||
from py.services import service_registry
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def randomizer_node():
|
||||
"""Create a LoraRandomizerNode instance for testing"""
|
||||
return LoraRandomizerNode()
|
||||
"""Create a LoraRandomizerLM instance for testing"""
|
||||
return LoraRandomizerLM()
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
from py.nodes.trigger_word_toggle import TriggerWordToggle
|
||||
from py.nodes.trigger_word_toggle import TriggerWordToggleLM
|
||||
|
||||
|
||||
def test_group_mode_preserves_parenthesized_groups():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{
|
||||
"text": "flat color, dark theme",
|
||||
@@ -42,7 +42,7 @@ def test_group_mode_preserves_parenthesized_groups():
|
||||
|
||||
|
||||
def test_duplicate_words_keep_individual_active_states():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{"text": "A", "active": True, "strength": None, "highlighted": False},
|
||||
{"text": "A", "active": False, "strength": None, "highlighted": False},
|
||||
@@ -61,7 +61,7 @@ def test_duplicate_words_keep_individual_active_states():
|
||||
|
||||
|
||||
def test_duplicate_words_preserve_strength_per_instance():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{"text": "(A:0.50)", "active": False, "strength": 0.50, "highlighted": False},
|
||||
{"text": "A", "active": True, "strength": 1.2, "highlighted": False},
|
||||
@@ -81,7 +81,7 @@ def test_duplicate_words_preserve_strength_per_instance():
|
||||
|
||||
|
||||
def test_duplicate_groups_respect_active_state():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{"text": "A, B", "active": False, "strength": None, "highlighted": False},
|
||||
{"text": "A, B", "active": True, "strength": None, "highlighted": False},
|
||||
@@ -100,7 +100,7 @@ def test_duplicate_groups_respect_active_state():
|
||||
|
||||
|
||||
def test_trigger_words_override_different_from_original():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{
|
||||
"text": "69yottea_style_illu",
|
||||
@@ -127,7 +127,7 @@ def test_trigger_words_override_different_from_original():
|
||||
|
||||
|
||||
def test_trigger_words_override_with_new_format():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
@@ -142,7 +142,7 @@ def test_trigger_words_override_with_new_format():
|
||||
|
||||
|
||||
def test_trigger_words_same_as_original_processes_toggle():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
trigger_data = [
|
||||
{"text": "word1", "active": True, "strength": None, "highlighted": False},
|
||||
{"text": "word2", "active": False, "strength": None, "highlighted": False},
|
||||
@@ -162,7 +162,7 @@ def test_trigger_words_same_as_original_processes_toggle():
|
||||
|
||||
|
||||
def test_trigger_words_override_empty_toggle_data():
|
||||
node = TriggerWordToggle()
|
||||
node = TriggerWordToggleLM()
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
|
||||
Reference in New Issue
Block a user