修改局部重绘的BUG
This commit is contained in:
@@ -593,7 +593,7 @@ class TestLoaderPromptRefactor(unittest.TestCase):
|
||||
self.assertEqual(sample_data["sampler_name"], "euler")
|
||||
self.assertEqual(latent["samples"].shape, (1, 4, 64, 64))
|
||||
|
||||
def test_ksampler_schema_appends_repair_widgets_after_legacy_widgets(self):
|
||||
def test_ksampler_schema_keeps_legacy_widget_order_for_workflow_compatibility(self):
|
||||
plugin = load_plugin_package()
|
||||
node_cls = plugin.NODE_CLASS_MAPPINGS["LLSSimpleKSampler"]
|
||||
required = node_cls.INPUT_TYPES()["required"]
|
||||
@@ -612,10 +612,10 @@ class TestLoaderPromptRefactor(unittest.TestCase):
|
||||
"sampler_name",
|
||||
"scheduler",
|
||||
"denoise",
|
||||
"flux_guidance",
|
||||
"model_family",
|
||||
"denoise_mode",
|
||||
"adapter_mode",
|
||||
"flux_guidance",
|
||||
"model_family",
|
||||
),
|
||||
)
|
||||
self.assertEqual(required["model_family"][1]["default"], "Auto")
|
||||
@@ -700,6 +700,7 @@ class TestLoaderPromptRefactor(unittest.TestCase):
|
||||
required = node_cls.INPUT_TYPES()["required"]
|
||||
optional = node_cls.INPUT_TYPES()["optional"]
|
||||
|
||||
self.assertEqual(node_cls.CATEGORY, "LLS/Image")
|
||||
self.assertEqual(node_cls.RETURN_TYPES, ("LATENT", "INT", "INT", "STRING"))
|
||||
self.assertEqual(required["image"][0], "IMAGE")
|
||||
self.assertEqual(required["vae"][0], "VAE")
|
||||
|
||||
@@ -112,6 +112,54 @@ class TestRepairSampler(unittest.TestCase):
|
||||
self.assertEqual(payload["repair_scope"], "region")
|
||||
self.assertEqual(payload["repair_kernel"], "latent_mask")
|
||||
|
||||
def test_sampler_recovers_shifted_values_from_broken_widget_order(self):
|
||||
load_plugin_package()
|
||||
from lls_node_test_repair.sampling import nodes as sampling_nodes
|
||||
|
||||
node = sampling_nodes.LLSSimpleKSampler()
|
||||
latent = {"samples": FakeLatentTensor((1, 4, 64, 64)), "source": "repair_prepare_region"}
|
||||
with mock.patch.object(sampling_nodes, "comfy_sample", object()), mock.patch.object(
|
||||
sampling_nodes,
|
||||
"comfy_samplers",
|
||||
types.SimpleNamespace(KSampler=types.SimpleNamespace(SAMPLERS=["euler"], SCHEDULERS=["karras"])),
|
||||
), mock.patch.object(
|
||||
sampling_nodes,
|
||||
"_common_ksampler",
|
||||
return_value={"samples": "done"},
|
||||
) as common:
|
||||
_result_latent, sample_info = node.sample(
|
||||
model=types.SimpleNamespace(_lls_family="FLUX_DEV"),
|
||||
positive="positive",
|
||||
negative="negative",
|
||||
latent_image=latent,
|
||||
quality_preset="Manual",
|
||||
seed=7,
|
||||
steps=20,
|
||||
cfg=7.0,
|
||||
sampler_name="euler",
|
||||
scheduler="karras",
|
||||
denoise=0.33,
|
||||
denoise_mode=4.2,
|
||||
adapter_mode="Auto",
|
||||
flux_guidance="auto_from_repair",
|
||||
model_family="auto",
|
||||
repair_info={
|
||||
"repair_scope": "region",
|
||||
"repair_kernel": "latent_mask",
|
||||
"recommended_denoise": 0.61,
|
||||
"model_family": "FLUX_DEV",
|
||||
"model_role": "normal",
|
||||
},
|
||||
guidance_stack=None,
|
||||
model_info=None,
|
||||
)
|
||||
|
||||
self.assertEqual(common.call_args.kwargs["denoise"], 0.61)
|
||||
payload = json.loads(sample_info)
|
||||
self.assertEqual(payload["family"], "FLUX_DEV")
|
||||
self.assertEqual(payload["guidance"], 4.2)
|
||||
self.assertTrue(payload["repair_mode"])
|
||||
|
||||
def test_sampler_rejects_unsupported_qwen_adapter(self):
|
||||
load_plugin_package()
|
||||
from lls_node_test_repair.sampling import nodes as sampling_nodes
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
import unittest
|
||||
|
||||
try:
|
||||
from .test_mask_draw_helpers import ROOT
|
||||
except ImportError:
|
||||
from test_mask_draw_helpers import ROOT
|
||||
|
||||
|
||||
class TestSamplingFrontendCompat(unittest.TestCase):
|
||||
def test_ksampler_compat_asset_exists(self):
|
||||
asset = ROOT / "web" / "js" / "lls_ksampler_compat.js"
|
||||
|
||||
self.assertTrue(asset.exists(), msg=f"Missing frontend asset: {asset}")
|
||||
|
||||
def test_ksampler_compat_asset_targets_sampler_node(self):
|
||||
asset = (ROOT / "web" / "js" / "lls_ksampler_compat.js").read_text(encoding="utf-8")
|
||||
|
||||
self.assertIn("app.registerExtension", asset)
|
||||
self.assertIn("LLSSimpleKSampler", asset)
|
||||
self.assertIn("LLS Simple KSampler", asset)
|
||||
self.assertIn("widgets_values", asset)
|
||||
self.assertIn("configure", asset)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user