Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
S
stable-diffusion-webui
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
stable-diffusion-webui
Commits
9bec415b
Unverified
Commit
9bec415b
authored
Jan 09, 2023
by
AUTOMATIC1111
Committed by
GitHub
Jan 09, 2023
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #6568 from mezotaken/fix-tests
Tests fixes and additions
parents
1fbb6f9e
00005ac9
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
90 additions
and
50 deletions
+90
-50
run_tests.yaml
.github/workflows/run_tests.yaml
+1
-1
__init__.py
test/advanced_features/__init__.py
+0
-0
txt2img_test.py
test/advanced_features/txt2img_test.py
+0
-47
extras_test.py
test/basic_features/extras_test.py
+54
-0
img2img_test.py
test/basic_features/img2img_test.py
+6
-1
txt2img_test.py
test/basic_features/txt2img_test.py
+11
-0
utils_test.py
test/basic_features/utils_test.py
+17
-0
server_poll.py
test/server_poll.py
+1
-1
No files found.
.github/workflows/run_tests.yaml
View file @
9bec415b
...
@@ -18,7 +18,7 @@ jobs:
...
@@ -18,7 +18,7 @@ jobs:
cache-dependency-path
:
|
cache-dependency-path
:
|
**/requirements*txt
**/requirements*txt
-
name
:
Run tests
-
name
:
Run tests
run
:
python launch.py --tests
basic_features
--no-half --disable-opt-split-attention --use-cpu all --skip-torch-cuda-test
run
:
python launch.py --tests --no-half --disable-opt-split-attention --use-cpu all --skip-torch-cuda-test
-
name
:
Upload main app stdout-stderr
-
name
:
Upload main app stdout-stderr
uses
:
actions/upload-artifact@v3
uses
:
actions/upload-artifact@v3
if
:
always()
if
:
always()
...
...
test/advanced_features/__init__.py
deleted
100644 → 0
View file @
1fbb6f9e
test/advanced_features/txt2img_test.py
deleted
100644 → 0
View file @
1fbb6f9e
import
unittest
import
requests
class
TestTxt2ImgWorking
(
unittest
.
TestCase
):
def
setUp
(
self
):
self
.
url_txt2img
=
"http://localhost:7860/sdapi/v1/txt2img"
self
.
simple_txt2img
=
{
"enable_hr"
:
False
,
"denoising_strength"
:
0
,
"firstphase_width"
:
0
,
"firstphase_height"
:
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
,
"sampler_index"
:
"Euler a"
}
def
test_txt2img_with_restore_faces_performed
(
self
):
self
.
simple_txt2img
[
"restore_faces"
]
=
True
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
class
TestTxt2ImgCorrectness
(
unittest
.
TestCase
):
pass
if
__name__
==
"__main__"
:
unittest
.
main
()
test/
advanced
_features/extras_test.py
→
test/
basic
_features/extras_test.py
View file @
9bec415b
import
unittest
import
unittest
import
requests
from
gradio.processing_utils
import
encode_pil_to_base64
from
PIL
import
Image
class
TestExtrasWorking
(
unittest
.
TestCase
):
class
TestExtrasWorking
(
unittest
.
TestCase
):
def
setUp
(
self
):
def
setUp
(
self
):
self
.
url_
img2img
=
"http://localhost:7860/sdapi/v1/extra-single-image"
self
.
url_
extras_single
=
"http://localhost:7860/sdapi/v1/extra-single-image"
self
.
simple_extras
=
{
self
.
extras_single
=
{
"resize_mode"
:
0
,
"resize_mode"
:
0
,
"show_extras_results"
:
True
,
"show_extras_results"
:
True
,
"gfpgan_visibility"
:
0
,
"gfpgan_visibility"
:
0
,
...
@@ -17,12 +19,35 @@ class TestExtrasWorking(unittest.TestCase):
...
@@ -17,12 +19,35 @@ class TestExtrasWorking(unittest.TestCase):
"upscaler_1"
:
"None"
,
"upscaler_1"
:
"None"
,
"upscaler_2"
:
"None"
,
"upscaler_2"
:
"None"
,
"extras_upscaler_2_visibility"
:
0
,
"extras_upscaler_2_visibility"
:
0
,
"image"
:
""
"image"
:
encode_pil_to_base64
(
Image
.
open
(
r"test/test_files/img2img_basic.png"
))
}
}
def
test_simple_upscaling_performed
(
self
):
self
.
extras_single
[
"upscaler_1"
]
=
"Lanczos"
self
.
assertEqual
(
requests
.
post
(
self
.
url_extras_single
,
json
=
self
.
extras_single
)
.
status_code
,
200
)
class
TestPngInfoWorking
(
unittest
.
TestCase
):
def
setUp
(
self
):
self
.
url_png_info
=
"http://localhost:7860/sdapi/v1/extra-single-image"
self
.
png_info
=
{
"image"
:
encode_pil_to_base64
(
Image
.
open
(
r"test/test_files/img2img_basic.png"
))
}
def
test_png_info_performed
(
self
):
self
.
assertEqual
(
requests
.
post
(
self
.
url_png_info
,
json
=
self
.
png_info
)
.
status_code
,
200
)
class
TestInterrogateWorking
(
unittest
.
TestCase
):
def
setUp
(
self
):
self
.
url_interrogate
=
"http://localhost:7860/sdapi/v1/extra-single-image"
self
.
interrogate
=
{
"image"
:
encode_pil_to_base64
(
Image
.
open
(
r"test/test_files/img2img_basic.png"
)),
"model"
:
"clip"
}
class
TestExtrasCorrectness
(
unittest
.
TestCase
):
def
test_interrogate_performed
(
self
):
pass
self
.
assertEqual
(
requests
.
post
(
self
.
url_interrogate
,
json
=
self
.
interrogate
)
.
status_code
,
200
)
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
...
...
test/basic_features/img2img_test.py
View file @
9bec415b
...
@@ -16,7 +16,7 @@ class TestImg2ImgWorking(unittest.TestCase):
...
@@ -16,7 +16,7 @@ class TestImg2ImgWorking(unittest.TestCase):
"inpainting_fill"
:
0
,
"inpainting_fill"
:
0
,
"inpaint_full_res"
:
False
,
"inpaint_full_res"
:
False
,
"inpaint_full_res_padding"
:
0
,
"inpaint_full_res_padding"
:
0
,
"inpainting_mask_invert"
:
0
,
"inpainting_mask_invert"
:
False
,
"prompt"
:
"example prompt"
,
"prompt"
:
"example prompt"
,
"styles"
:
[],
"styles"
:
[],
"seed"
:
-
1
,
"seed"
:
-
1
,
...
@@ -50,6 +50,11 @@ class TestImg2ImgWorking(unittest.TestCase):
...
@@ -50,6 +50,11 @@ class TestImg2ImgWorking(unittest.TestCase):
self
.
simple_img2img
[
"mask"
]
=
encode_pil_to_base64
(
Image
.
open
(
r"test/test_files/mask_basic.png"
))
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
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_img2img
,
json
=
self
.
simple_img2img
)
.
status_code
,
200
)
def
test_inpainting_with_inverted_masked_performed
(
self
):
self
.
simple_img2img
[
"mask"
]
=
encode_pil_to_base64
(
Image
.
open
(
r"test/test_files/mask_basic.png"
))
self
.
simple_img2img
[
"inpainting_mask_invert"
]
=
True
self
.
assertEqual
(
requests
.
post
(
self
.
url_img2img
,
json
=
self
.
simple_img2img
)
.
status_code
,
200
)
def
test_img2img_sd_upscale_performed
(
self
):
def
test_img2img_sd_upscale_performed
(
self
):
self
.
simple_img2img
[
"script_name"
]
=
"sd upscale"
self
.
simple_img2img
[
"script_name"
]
=
"sd upscale"
self
.
simple_img2img
[
"script_args"
]
=
[
""
,
8
,
"Lanczos"
,
2.0
]
self
.
simple_img2img
[
"script_args"
]
=
[
""
,
8
,
"Lanczos"
,
2.0
]
...
...
test/basic_features/txt2img_test.py
View file @
9bec415b
...
@@ -41,6 +41,9 @@ class TestTxt2ImgWorking(unittest.TestCase):
...
@@ -41,6 +41,9 @@ class TestTxt2ImgWorking(unittest.TestCase):
self
.
simple_txt2img
[
"negative_prompt"
]
=
"example negative prompt"
self
.
simple_txt2img
[
"negative_prompt"
]
=
"example negative prompt"
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
def
test_txt2img_with_complex_prompt_performed
(
self
):
self
.
simple_txt2img
[
"prompt"
]
=
"((emphasis)), (emphasis1:1.1), [to:1], [from::2], [from:to:0.3], [alt|alt1]"
def
test_txt2img_not_square_image_performed
(
self
):
def
test_txt2img_not_square_image_performed
(
self
):
self
.
simple_txt2img
[
"height"
]
=
128
self
.
simple_txt2img
[
"height"
]
=
128
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
...
@@ -53,6 +56,10 @@ class TestTxt2ImgWorking(unittest.TestCase):
...
@@ -53,6 +56,10 @@ class TestTxt2ImgWorking(unittest.TestCase):
self
.
simple_txt2img
[
"tiling"
]
=
True
self
.
simple_txt2img
[
"tiling"
]
=
True
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
def
test_txt2img_with_restore_faces_performed
(
self
):
self
.
simple_txt2img
[
"restore_faces"
]
=
True
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
def
test_txt2img_with_vanilla_sampler_performed
(
self
):
def
test_txt2img_with_vanilla_sampler_performed
(
self
):
self
.
simple_txt2img
[
"sampler_index"
]
=
"PLMS"
self
.
simple_txt2img
[
"sampler_index"
]
=
"PLMS"
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
...
@@ -63,6 +70,10 @@ class TestTxt2ImgWorking(unittest.TestCase):
...
@@ -63,6 +70,10 @@ class TestTxt2ImgWorking(unittest.TestCase):
self
.
simple_txt2img
[
"n_iter"
]
=
2
self
.
simple_txt2img
[
"n_iter"
]
=
2
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
def
test_txt2img_batch_performed
(
self
):
self
.
simple_txt2img
[
"batch_size"
]
=
2
self
.
assertEqual
(
requests
.
post
(
self
.
url_txt2img
,
json
=
self
.
simple_txt2img
)
.
status_code
,
200
)
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
unittest
.
main
()
unittest
.
main
()
test/basic_features/utils_test.py
View file @
9bec415b
...
@@ -14,10 +14,25 @@ class UtilsTests(unittest.TestCase):
...
@@ -14,10 +14,25 @@ class UtilsTests(unittest.TestCase):
self
.
url_prompt_styles
=
"http://localhost:7860/sdapi/v1/prompt-styles"
self
.
url_prompt_styles
=
"http://localhost:7860/sdapi/v1/prompt-styles"
self
.
url_artist_categories
=
"http://localhost:7860/sdapi/v1/artist-categories"
self
.
url_artist_categories
=
"http://localhost:7860/sdapi/v1/artist-categories"
self
.
url_artists
=
"http://localhost:7860/sdapi/v1/artists"
self
.
url_artists
=
"http://localhost:7860/sdapi/v1/artists"
self
.
url_embeddings
=
"http://localhost:7860/sdapi/v1/embeddings"
def
test_options_get
(
self
):
def
test_options_get
(
self
):
self
.
assertEqual
(
requests
.
get
(
self
.
url_options
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
get
(
self
.
url_options
)
.
status_code
,
200
)
def
test_options_write
(
self
):
response
=
requests
.
get
(
self
.
url_options
)
self
.
assertEqual
(
response
.
status_code
,
200
)
pre_value
=
response
.
json
()[
"send_seed"
]
self
.
assertEqual
(
requests
.
post
(
self
.
url_options
,
json
=
{
"send_seed"
:
not
pre_value
})
.
status_code
,
200
)
response
=
requests
.
get
(
self
.
url_options
)
self
.
assertEqual
(
response
.
status_code
,
200
)
self
.
assertEqual
(
response
.
json
()[
"send_seed"
],
not
pre_value
)
requests
.
post
(
self
.
url_options
,
json
=
{
"send_seed"
:
pre_value
})
def
test_cmd_flags
(
self
):
def
test_cmd_flags
(
self
):
self
.
assertEqual
(
requests
.
get
(
self
.
url_cmd_flags
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
get
(
self
.
url_cmd_flags
)
.
status_code
,
200
)
...
@@ -48,6 +63,8 @@ class UtilsTests(unittest.TestCase):
...
@@ -48,6 +63,8 @@ class UtilsTests(unittest.TestCase):
def
test_artists
(
self
):
def
test_artists
(
self
):
self
.
assertEqual
(
requests
.
get
(
self
.
url_artists
)
.
status_code
,
200
)
self
.
assertEqual
(
requests
.
get
(
self
.
url_artists
)
.
status_code
,
200
)
def
test_embeddings
(
self
):
self
.
assertEqual
(
requests
.
get
(
self
.
url_artists
)
.
status_code
,
200
)
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
unittest
.
main
()
unittest
.
main
()
test/server_poll.py
View file @
9bec415b
...
@@ -15,7 +15,7 @@ def run_tests(proc, test_dir):
...
@@ -15,7 +15,7 @@ def run_tests(proc, test_dir):
break
break
if
proc
.
poll
()
is
None
:
if
proc
.
poll
()
is
None
:
if
test_dir
is
None
:
if
test_dir
is
None
:
test_dir
=
""
test_dir
=
"
test
"
suite
=
unittest
.
TestLoader
()
.
discover
(
test_dir
,
pattern
=
"*_test.py"
,
top_level_dir
=
"test"
)
suite
=
unittest
.
TestLoader
()
.
discover
(
test_dir
,
pattern
=
"*_test.py"
,
top_level_dir
=
"test"
)
result
=
unittest
.
TextTestRunner
(
verbosity
=
2
)
.
run
(
suite
)
result
=
unittest
.
TextTestRunner
(
verbosity
=
2
)
.
run
(
suite
)
return
len
(
result
.
failures
)
+
len
(
result
.
errors
)
return
len
(
result
.
failures
)
+
len
(
result
.
errors
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment