mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-21 21:22:11 -03:00
feat(trigger-word-toggle): use trigger_words directly when it differs from original message
This commit is contained in:
@@ -4,9 +4,24 @@ from py.nodes.trigger_word_toggle import TriggerWordToggle
|
||||
def test_group_mode_preserves_parenthesized_groups():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{'text': 'flat color, dark theme', 'active': True, 'strength': None, 'highlighted': False},
|
||||
{'text': '(a, really, long, test, trigger, word:1.06)', 'active': True, 'strength': 1.06, 'highlighted': False},
|
||||
{'text': '(sinozick style:0.94)', 'active': True, 'strength': 0.94, 'highlighted': False},
|
||||
{
|
||||
"text": "flat color, dark theme",
|
||||
"active": True,
|
||||
"strength": None,
|
||||
"highlighted": False,
|
||||
},
|
||||
{
|
||||
"text": "(a, really, long, test, trigger, word:1.06)",
|
||||
"active": True,
|
||||
"strength": 1.06,
|
||||
"highlighted": False,
|
||||
},
|
||||
{
|
||||
"text": "(sinozick style:0.94)",
|
||||
"active": True,
|
||||
"strength": 0.94,
|
||||
"highlighted": False,
|
||||
},
|
||||
]
|
||||
|
||||
original_message = (
|
||||
@@ -14,7 +29,7 @@ def test_group_mode_preserves_parenthesized_groups():
|
||||
"(sinozick style:0.94)"
|
||||
)
|
||||
|
||||
filtered, = node.process_trigger_words(
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=True,
|
||||
default_active=True,
|
||||
@@ -29,11 +44,11 @@ def test_group_mode_preserves_parenthesized_groups():
|
||||
def test_duplicate_words_keep_individual_active_states():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{'text': 'A', 'active': True, 'strength': None, 'highlighted': False},
|
||||
{'text': 'A', 'active': False, 'strength': None, 'highlighted': False},
|
||||
{"text": "A", "active": True, "strength": None, "highlighted": False},
|
||||
{"text": "A", "active": False, "strength": None, "highlighted": False},
|
||||
]
|
||||
|
||||
filtered, = node.process_trigger_words(
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=False,
|
||||
default_active=True,
|
||||
@@ -48,12 +63,12 @@ def test_duplicate_words_keep_individual_active_states():
|
||||
def test_duplicate_words_preserve_strength_per_instance():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{'text': '(A:0.50)', 'active': False, 'strength': 0.50, 'highlighted': False},
|
||||
{'text': 'A', 'active': True, 'strength': 1.2, 'highlighted': False},
|
||||
{'text': '(A:0.75)', 'active': True, 'strength': 0.75, 'highlighted': False},
|
||||
{"text": "(A:0.50)", "active": False, "strength": 0.50, "highlighted": False},
|
||||
{"text": "A", "active": True, "strength": 1.2, "highlighted": False},
|
||||
{"text": "(A:0.75)", "active": True, "strength": 0.75, "highlighted": False},
|
||||
]
|
||||
|
||||
filtered, = node.process_trigger_words(
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=False,
|
||||
default_active=True,
|
||||
@@ -68,11 +83,11 @@ def test_duplicate_words_preserve_strength_per_instance():
|
||||
def test_duplicate_groups_respect_active_state():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{'text': 'A, B', 'active': False, 'strength': None, 'highlighted': False},
|
||||
{'text': 'A, B', 'active': True, 'strength': None, 'highlighted': False},
|
||||
{"text": "A, B", "active": False, "strength": None, "highlighted": False},
|
||||
{"text": "A, B", "active": True, "strength": None, "highlighted": False},
|
||||
]
|
||||
|
||||
filtered, = node.process_trigger_words(
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=True,
|
||||
default_active=True,
|
||||
@@ -82,3 +97,80 @@ def test_duplicate_groups_respect_active_state():
|
||||
)
|
||||
|
||||
assert filtered == "A, B"
|
||||
|
||||
|
||||
def test_trigger_words_override_different_from_original():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{
|
||||
"text": "69yottea_style_illu",
|
||||
"active": [
|
||||
{"text": "createconcept", "active": True},
|
||||
{"text": "DS-Illu", "active": True},
|
||||
],
|
||||
"strength": None,
|
||||
"highlighted": False,
|
||||
}
|
||||
]
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=True,
|
||||
default_active=True,
|
||||
allow_strength_adjustment=False,
|
||||
orinalMessage="69yottea_style_illu",
|
||||
trigger_words="masterpiece, best quality, very aesthetic, absurdres",
|
||||
toggle_trigger_words=trigger_data,
|
||||
)
|
||||
|
||||
assert filtered == "masterpiece, best quality, very aesthetic, absurdres"
|
||||
|
||||
|
||||
def test_trigger_words_override_with_new_format():
|
||||
node = TriggerWordToggle()
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=True,
|
||||
default_active=True,
|
||||
allow_strength_adjustment=False,
|
||||
orinalMessage="69yottea_style_illu",
|
||||
trigger_words="masterpiece, best quality, very aesthetic, absurdres",
|
||||
)
|
||||
|
||||
assert filtered == "masterpiece, best quality, very aesthetic, absurdres"
|
||||
|
||||
|
||||
def test_trigger_words_same_as_original_processes_toggle():
|
||||
node = TriggerWordToggle()
|
||||
trigger_data = [
|
||||
{"text": "word1", "active": True, "strength": None, "highlighted": False},
|
||||
{"text": "word2", "active": False, "strength": None, "highlighted": False},
|
||||
]
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=False,
|
||||
default_active=True,
|
||||
allow_strength_adjustment=False,
|
||||
orinalMessage="word1, word2",
|
||||
trigger_words="word1, word2",
|
||||
toggle_trigger_words=trigger_data,
|
||||
)
|
||||
|
||||
assert filtered == "word1"
|
||||
|
||||
|
||||
def test_trigger_words_override_empty_toggle_data():
|
||||
node = TriggerWordToggle()
|
||||
|
||||
(filtered,) = node.process_trigger_words(
|
||||
id="node",
|
||||
group_mode=True,
|
||||
default_active=True,
|
||||
allow_strength_adjustment=False,
|
||||
orinalMessage="69yottea_style_illu",
|
||||
trigger_words="custom trigger words",
|
||||
)
|
||||
|
||||
assert filtered == "custom trigger words"
|
||||
|
||||
Reference in New Issue
Block a user