Add profile-aware image reference editing
This commit is contained in:
+16
-1
@@ -3,7 +3,7 @@ from pathlib import Path
|
||||
import tempfile
|
||||
import unittest
|
||||
from unittest.mock import patch,Mock
|
||||
from image_test import ImageTests,workflow,select_gpus
|
||||
from image_test import ImageTests,workflow,select_gpus,decode_references
|
||||
|
||||
class ImageTestTests(unittest.TestCase):
|
||||
def test_workflow_uses_selected_profile_and_owned_aliases(self):
|
||||
@@ -15,6 +15,21 @@ class ImageTestTests(unittest.TestCase):
|
||||
self.assertEqual(graph['6']['inputs']['steps'],12)
|
||||
self.assertEqual(graph['6']['inputs']['cfg'],1.5)
|
||||
self.assertEqual(graph['5']['inputs']['height'],768)
|
||||
def test_qwen_references_feed_conditioning_and_edit_latent(self):
|
||||
p=dict(width=512,height=512,steps=4,guidance=1)
|
||||
graph=workflow('synthetic edit',p,42,references=['reference-1.png','reference-2.jpg'])
|
||||
self.assertEqual(graph['4']['inputs']['vae'],['3',0])
|
||||
self.assertEqual(graph['4']['inputs']['image_1'],['21',0])
|
||||
self.assertEqual(graph['4']['inputs']['image_2'],['22',0])
|
||||
self.assertEqual(graph['6']['inputs']['latent_image'],['4',2])
|
||||
self.assertEqual(graph['21']['inputs']['image'],'reference-1.png')
|
||||
with self.assertRaises(ValueError):workflow('test',p,1,'flux',['reference-1.png'])
|
||||
def test_reference_validation_enforces_profile_limit_and_signature(self):
|
||||
import base64
|
||||
png='data:image/png;base64,'+base64.b64encode(b'\x89PNG\r\n\x1a\nsynthetic').decode()
|
||||
self.assertEqual(len(decode_references([png],4)),1)
|
||||
for value,limit in [([png],0),([png]*5,4),(['data:image/png;base64,'+base64.b64encode(b'not png').decode()],4)]:
|
||||
with self.assertRaises(ValueError):decode_references(value,limit)
|
||||
def test_flux_graph_and_offload(self):
|
||||
p=dict(width=512,height=512,steps=4,guidance=1)
|
||||
graph=workflow('a red bicycle',p,42,'flux')
|
||||
|
||||
Reference in New Issue
Block a user