From 2f3d8172c3fe80ea64ebe5c797835ca15c2e595f Mon Sep 17 00:00:00 2001 From: Vladimir Repin <32306715+mezotaken@users.noreply.github.com> Date: Sat, 29 Oct 2022 21:43:32 +0300 Subject: [PATCH] img2img test template and setUp added --- test/extras_test.py | 0 test/img2img_test.py | 59 +++++++++++++++++ test/test_files/img2img_basic.png | Bin 0 -> 9932 bytes test/test_files/mask_basic.png | Bin 0 -> 362 bytes test/txt2img_test.py | 102 ++++++++++++++---------------- 5 files changed, 106 insertions(+), 55 deletions(-) create mode 100644 test/extras_test.py create mode 100644 test/img2img_test.py create mode 100644 test/test_files/img2img_basic.png create mode 100644 test/test_files/mask_basic.png diff --git a/test/extras_test.py b/test/extras_test.py new file mode 100644 index 00000000..e69de29b diff --git a/test/img2img_test.py b/test/img2img_test.py new file mode 100644 index 00000000..d8ed309d --- /dev/null +++ b/test/img2img_test.py @@ -0,0 +1,59 @@ +import unittest +import requests +from gradio.processing_utils import encode_pil_to_base64 +from PIL import Image + +class Img2ImgWorking(unittest.TestCase): + def setUp(self): + self.url_img2img = "http://localhost:7860/sdapi/v1/img2img" + self.simple_img2img = { + "init_images": [ + encode_pil_to_base64(Image.open(r"test/test_files/img2img_basic.png")) + ], + "resize_mode": 0, + "denoising_strength": 0.75, + "mask": None, + "mask_blur": 4, + "inpainting_fill": 0, + "inpaint_full_res": False, + "inpaint_full_res_padding": 0, + "inpainting_mask_invert": 0, + "prompt": "example prompt", + "styles": [ + "" + ], + "seed": -1, + "subseed": -1, + "subseed_strength": 0, + "seed_resize_from_h": -1, + "seed_resize_from_w": -1, + "batch_size": 1, + "n_iter": 1, + "steps": 3, + "cfg_scale": 7, + "width": 64, + "height": 64, + "restore_faces": False, + "tiling": False, + "negative_prompt": "", + "eta": 0, + "s_churn": 0, + "s_tmax": 0, + "s_tmin": 0, + "s_noise": 1, + "override_settings": {}, + "sampler_index": "Euler a", + "include_init_images": False + } + def test_img2img_simple_performed(self): + self.assertEqual(requests.post(self.url_img2img, json=self.simple_img2img).status_code, 200) + + def test_inpainting_masked_performed(self): + self.simple_img2img["mask"] = encode_pil_to_base64(Image.open(r"test/test_files/mask_basic.png")) + self.assertEqual(requests.post(self.url_img2img, json=self.simple_img2img).status_code, 200) + +class TestImg2ImgCorrectness(unittest.TestCase): + pass + +if __name__ == "__main__": + unittest.main() \ No newline at end of file diff --git a/test/test_files/img2img_basic.png b/test/test_files/img2img_basic.png new file mode 100644 index 0000000000000000000000000000000000000000..49a420482d0a70b9f5986d776a66cb3ea39d1a97 GIT binary patch literal 9932 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 KMNUMnLSTXg;ov#| literal 0 HcmV?d00001 diff --git a/test/test_files/mask_basic.png b/test/test_files/mask_basic.png new file mode 100644 index 0000000000000000000000000000000000000000..0c2e9a6899e5c0381ce7c7364b31d684464ab423 GIT binary patch literal 362 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1SD0tpLGH$#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!;D1jS$B+!?x96kznhkhd0>ACglv+8xYZYf@ zg7GSo=i*7f^M21SZkWY22=JGmJVkbv-kp#gwEW^`mya*CxhPGhwnXiGR`q; zo_<(}c}Ira`{OCB1*f%^@py1P=&GJ^RapMOKMtQgA~FY_S)9o&KEP?c*l_PbMs=N@ zV_(`fFl>98;NHv3x8~HrJ}GvYh^fu8rhFC~wAih)4l!|Ub4{*lX7-Da=zYmMk&)H< zvBCDUjP^HV8at;yV&?jG|L~f5QyQAI!wgd$!W<6jey*@rGhFask>nnkY0@8#W!nC+ rec9Q-ulM)Z_RxN|lmdu{w!YU_dMY9qnsK!N7!(Yiu6{1-oD!M