@@ -14,22 +14,36 @@ def test_version(capsys: pytest.LogCaptureFixture) -> None:
1414 assert captured .out == __version__ + "\n "
1515
1616
17+ def test_version_short (capsys : pytest .LogCaptureFixture ) -> None :
18+ with pytest .raises (SystemExit ):
19+ main (["-v" ])
20+ captured = capsys .readouterr ()
21+ assert captured .out == __version__ + "\n "
22+
23+
1724def test_help (capsys : pytest .LogCaptureFixture ) -> None :
1825 with pytest .raises (SystemExit ):
1926 main (["--help" ])
2027 captured = capsys .readouterr ()
2128 assert "Generate image with diffusion model" in captured .out
2229
2330
24- def test_required (capsys : pytest .LogCaptureFixture ) -> None :
31+ def test_help_short (capsys : pytest .LogCaptureFixture ) -> None :
32+ with pytest .raises (SystemExit ):
33+ main (["-h" ])
34+ captured = capsys .readouterr ()
35+ assert "Generate image with diffusion model" in captured .out
36+
37+
38+ def test_no_arguments (capsys : pytest .LogCaptureFixture ) -> None :
2539 with pytest .raises (SystemExit ) as exception :
2640 main ([])
2741 captured = capsys .readouterr ()
2842 assert exception .type is SystemExit
2943 assert "error: the following arguments are required: model, prompt" in captured .err
3044
3145
32- def test_invalid (capsys : pytest .LogCaptureFixture ) -> None :
46+ def test_invalid_argument (capsys : pytest .LogCaptureFixture ) -> None :
3347 with pytest .raises (SystemExit ) as exception :
3448 main (["model" , "prompt" , "--invalid" ])
3549 captured = capsys .readouterr ()
@@ -39,7 +53,7 @@ def test_invalid(capsys: pytest.LogCaptureFixture) -> None:
3953
4054@patch ("diffusers.AutoPipelineForText2Image.from_pretrained" )
4155@patch ("PIL.Image.Image.save" )
42- def test_generate (
56+ def test_generate_image (
4357 mock_from_pretrained : Mock , mock_save : Mock , capsys : pytest .LogCaptureFixture
4458) -> None :
4559 main (["model" , "prompt" ])
@@ -56,11 +70,45 @@ def test_generate(
5670
5771@patch ("diffusers.AutoPipelineForText2Image.from_pretrained" )
5872@patch ("PIL.Image.Image.save" )
59- def test_generate_output (
73+ def test_output (
6074 mock_from_pretrained : Mock , mock_save : Mock , capsys : pytest .LogCaptureFixture
6175) -> None :
6276 filename = "image.png"
6377 main (["model" , "prompt" , "--output" , filename ])
6478 mock_save .assert_called_once ()
6579 captured = capsys .readouterr ()
6680 assert captured .out == f"🤗 { filename } \n "
81+
82+
83+ @patch ("diffusers.AutoPipelineForText2Image.from_pretrained" )
84+ @patch ("PIL.Image.Image.save" )
85+ def test_output_short (
86+ mock_from_pretrained : Mock , mock_save : Mock , capsys : pytest .LogCaptureFixture
87+ ) -> None :
88+ filename = "image.png"
89+ main (["model" , "prompt" , "-o" , filename ])
90+ mock_save .assert_called_once ()
91+ captured = capsys .readouterr ()
92+ assert captured .out == f"🤗 { filename } \n "
93+
94+
95+ @patch ("diffusers.AutoPipelineForText2Image.from_pretrained" )
96+ @patch ("PIL.Image.Image.save" )
97+ def test_width_height (
98+ mock_from_pretrained : Mock , mock_save : Mock , capsys : pytest .LogCaptureFixture
99+ ) -> None :
100+ main (["model" , "prompt" , "--width" , "1024" , "--height" , "1024" ])
101+ mock_save .assert_called_once ()
102+ captured = capsys .readouterr ()
103+ assert "🤗 " in captured .out
104+
105+
106+ @patch ("diffusers.AutoPipelineForText2Image.from_pretrained" )
107+ @patch ("PIL.Image.Image.save" )
108+ def test_width_height_short (
109+ mock_from_pretrained : Mock , mock_save : Mock , capsys : pytest .LogCaptureFixture
110+ ) -> None :
111+ main (["model" , "prompt" , "-W" , "1024" , "-H" , "1024" ])
112+ mock_save .assert_called_once ()
113+ captured = capsys .readouterr ()
114+ assert "🤗 " in captured .out
0 commit comments