test_img2img.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import pytest
  2. import requests
  3. @pytest.fixture()
  4. def url_img2img(base_url):
  5. return f"{base_url}/sdapi/v1/img2img"
  6. @pytest.fixture()
  7. def simple_img2img_request(img2img_basic_image_base64):
  8. return {
  9. "batch_size": 1,
  10. "cfg_scale": 7,
  11. "denoising_strength": 0.75,
  12. "eta": 0,
  13. "height": 64,
  14. "include_init_images": False,
  15. "init_images": [img2img_basic_image_base64],
  16. "inpaint_full_res": False,
  17. "inpaint_full_res_padding": 0,
  18. "inpainting_fill": 0,
  19. "inpainting_mask_invert": False,
  20. "mask": None,
  21. "mask_blur": 4,
  22. "n_iter": 1,
  23. "negative_prompt": "",
  24. "override_settings": {},
  25. "prompt": "example prompt",
  26. "resize_mode": 0,
  27. "restore_faces": False,
  28. "s_churn": 0,
  29. "s_noise": 1,
  30. "s_tmax": 0,
  31. "s_tmin": 0,
  32. "sampler_index": "Euler a",
  33. "seed": -1,
  34. "seed_resize_from_h": -1,
  35. "seed_resize_from_w": -1,
  36. "steps": 3,
  37. "styles": [],
  38. "subseed": -1,
  39. "subseed_strength": 0,
  40. "tiling": False,
  41. "width": 64,
  42. }
  43. def test_img2img_simple_performed(url_img2img, simple_img2img_request):
  44. assert requests.post(url_img2img, json=simple_img2img_request).status_code == 200
  45. def test_inpainting_masked_performed(url_img2img, simple_img2img_request, mask_basic_image_base64):
  46. simple_img2img_request["mask"] = mask_basic_image_base64
  47. assert requests.post(url_img2img, json=simple_img2img_request).status_code == 200
  48. def test_inpainting_with_inverted_masked_performed(url_img2img, simple_img2img_request, mask_basic_image_base64):
  49. simple_img2img_request["mask"] = mask_basic_image_base64
  50. simple_img2img_request["inpainting_mask_invert"] = True
  51. assert requests.post(url_img2img, json=simple_img2img_request).status_code == 200
  52. def test_img2img_sd_upscale_performed(url_img2img, simple_img2img_request):
  53. simple_img2img_request["script_name"] = "sd upscale"
  54. simple_img2img_request["script_args"] = ["", 8, "Lanczos", 2.0]
  55. assert requests.post(url_img2img, json=simple_img2img_request).status_code == 200