42 lines
1.4 KiB
Python
42 lines
1.4 KiB
Python
import json
|
|
import pathlib
|
|
import unittest
|
|
|
|
|
|
ROOT = pathlib.Path(__file__).resolve().parents[1]
|
|
|
|
|
|
class TestExampleWorkflows(unittest.TestCase):
|
|
def _load(self, name: str) -> dict:
|
|
return json.loads((ROOT / name).read_text(encoding="utf-8"))
|
|
|
|
def _find_node(self, workflow: dict, node_type: str) -> dict:
|
|
for node in workflow.get("nodes", []):
|
|
if node.get("type") == node_type:
|
|
return node
|
|
self.fail(f"Missing node type {node_type!r} in workflow")
|
|
|
|
def test_universal_txt2img_ksampler_keeps_seed_control_widget(self):
|
|
workflow = self._load("LLS-universal-txt2img-workflow.json")
|
|
node = self._find_node(workflow, "LLSSimpleKSampler")
|
|
widgets = node.get("widgets_values", [])
|
|
|
|
self.assertGreaterEqual(len(widgets), 12)
|
|
self.assertEqual(widgets[0], "Family Default")
|
|
self.assertEqual(widgets[2], "randomize")
|
|
self.assertEqual(widgets[3], 20)
|
|
|
|
def test_universal_inpaint_ksampler_keeps_seed_control_widget(self):
|
|
workflow = self._load("LLS-universal-inpaint-workflow.json")
|
|
node = self._find_node(workflow, "LLSSimpleKSampler")
|
|
widgets = node.get("widgets_values", [])
|
|
|
|
self.assertGreaterEqual(len(widgets), 12)
|
|
self.assertEqual(widgets[0], "Family Default")
|
|
self.assertEqual(widgets[2], "randomize")
|
|
self.assertEqual(widgets[3], 20)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|