@@ -32,8 +32,9 @@ def root_logger() -> logging.Logger:
3232 return root
3333
3434
35- def test_run_with_logging_integration_normal (
36- tester : ApplicationTester , root_logger : logging .Logger
35+ def test_cleohandler_normal (
36+ tester : ApplicationTester ,
37+ root_logger : logging .Logger ,
3738) -> None :
3839 handler = CleoHandler (tester .io .output )
3940 root_logger .addHandler (handler )
@@ -46,8 +47,9 @@ def test_run_with_logging_integration_normal(
4647 assert tester .io .fetch_output () == expected
4748
4849
49- def test_run_with_logging_integration_quiet (
50- tester : ApplicationTester , root_logger : logging .Logger
50+ def test_cleohandler_quiet (
51+ tester : ApplicationTester ,
52+ root_logger : logging .Logger ,
5153) -> None :
5254 handler = CleoHandler (tester .io .output )
5355 root_logger .addHandler (handler )
@@ -58,8 +60,9 @@ def test_run_with_logging_integration_quiet(
5860 assert tester .io .fetch_output () == ""
5961
6062
61- def test_run_with_logging_integration_verbose (
62- tester : ApplicationTester , root_logger : logging .Logger
63+ def test_cleohandler_verbose (
64+ tester : ApplicationTester ,
65+ root_logger : logging .Logger ,
6366) -> None :
6467 handler = CleoHandler (tester .io .output )
6568 root_logger .addHandler (handler )
@@ -76,8 +79,9 @@ def test_run_with_logging_integration_verbose(
7679 assert tester .io .fetch_output () == expected
7780
7881
79- def test_run_with_logging_integration_very_verbose (
80- tester : ApplicationTester , root_logger : logging .Logger
82+ def test_cleohandler_very_verbose (
83+ tester : ApplicationTester ,
84+ root_logger : logging .Logger ,
8185) -> None :
8286 handler = CleoHandler (tester .io .output )
8387 root_logger .addHandler (handler )
@@ -93,3 +97,51 @@ def test_run_with_logging_integration_very_verbose(
9397
9498 assert status_code == 0
9599 assert tester .io .fetch_output () == expected
100+
101+
102+ def test_cleohandler_exception_normal (
103+ tester : ApplicationTester ,
104+ root_logger : logging .Logger ,
105+ ) -> None :
106+ handler = CleoHandler (tester .io .output )
107+ root_logger .addHandler (handler )
108+
109+ status_code = tester .execute ("--exception" )
110+
111+ assert status_code == 0
112+ lines = tester .io .fetch_output ().splitlines ()
113+
114+ assert len (lines ) == 7
115+ assert lines [0 ] == "This is an exception that I raised"
116+
117+
118+ def test_cleohandler_exception_verbose (
119+ tester : ApplicationTester ,
120+ root_logger : logging .Logger ,
121+ ) -> None :
122+ handler = CleoHandler (tester .io .output )
123+ root_logger .addHandler (handler )
124+
125+ status_code = tester .execute ("-v --exception" )
126+
127+ assert status_code == 0
128+ lines = tester .io .fetch_output ().splitlines ()
129+
130+ assert len (lines ) == 20
131+ assert lines [0 ] == "This is an exception that I raised"
132+
133+
134+ def test_cleohandler_exception_very_verbose (
135+ tester : ApplicationTester ,
136+ root_logger : logging .Logger ,
137+ ) -> None :
138+ handler = CleoHandler (tester .io .output )
139+ root_logger .addHandler (handler )
140+
141+ status_code = tester .execute ("-vv --exception" )
142+
143+ assert status_code == 0
144+ lines = tester .io .fetch_output ().splitlines ()
145+
146+ assert len (lines ) == 20
147+ assert lines [0 ] == "This is an exception that I raised"
0 commit comments