@@ -90,6 +90,15 @@ def setup_patches(mock_logger):
90
90
)
91
91
92
92
93
+ @pytest .fixture
94
+ def mock_handler_set_formatter ():
95
+ patch__set_handler_formatter = patch .object (ProviderLogHandler , "setFormatter" )
96
+ patch__set_hook_handler_formatter = patch .object (
97
+ HookProviderLogHandler , "setFormatter"
98
+ )
99
+ return patch__set_handler_formatter , patch__set_hook_handler_formatter
100
+
101
+
93
102
@pytest .fixture
94
103
def mock_provider_handler ():
95
104
plh = ProviderLogHandler (
@@ -197,6 +206,21 @@ def test_setup_existing_logger(setup_patches, mock_session):
197
206
mock_log .return_value .addHandler .assert_not_called ()
198
207
199
208
209
+ def test_setup_with_formatter (setup_patches , mock_session , mock_handler_set_formatter ):
210
+ payload , _hook_payload , p_logger , p__get_logger , _p__get_hook_logger = setup_patches
211
+ (
212
+ p__set_handler_formatter ,
213
+ _p__set_hook_handler_formatter ,
214
+ ) = mock_handler_set_formatter
215
+ formatter = logging .Formatter ()
216
+ with p_logger as mock_log , p__get_logger as mock_get , p__set_handler_formatter as mock_set_formatter : # pylint: disable=C0301 # noqa: B950
217
+ mock_get .return_value = None
218
+ ProviderLogHandler .setup (payload , mock_session , formatter )
219
+ mock_session .client .assert_called_once_with ("logs" )
220
+ mock_log .return_value .addHandler .assert_called_once ()
221
+ mock_set_formatter .assert_called_once_with (formatter )
222
+
223
+
200
224
def test_setup_without_log_group_should_not_set_up (mock_logger , mock_session ):
201
225
patch_logger = patch (
202
226
"cloudformation_cli_python_lib.log_delivery.logging.getLogger" ,
@@ -387,6 +411,23 @@ def test_setup_existing_hook_logger(setup_patches, mock_session):
387
411
mock_log .return_value .addHandler .assert_not_called ()
388
412
389
413
414
+ def test_setup_with_hook_formatter (
415
+ setup_patches , mock_session , mock_handler_set_formatter
416
+ ):
417
+ _payload , hook_payload , p_logger , p__get_logger , _p__get_hook_logger = setup_patches
418
+ (
419
+ _p__set_handler_formatter ,
420
+ p__set_hook_handler_formatter ,
421
+ ) = mock_handler_set_formatter
422
+ formatter = logging .Formatter ()
423
+ with p_logger as mock_log , p__get_logger as mock_get , p__set_hook_handler_formatter as mock_set_formatter : # pylint: disable=C0301 # noqa: B950
424
+ mock_get .return_value = None
425
+ HookProviderLogHandler .setup (hook_payload , mock_session , formatter )
426
+ mock_session .client .assert_called_once_with ("logs" )
427
+ mock_log .return_value .addHandler .assert_called_once ()
428
+ mock_set_formatter .assert_called_once_with (formatter )
429
+
430
+
390
431
def test_setup_without_hook_log_group_should_not_set_up (mock_logger , mock_session ):
391
432
patch_logger = patch (
392
433
"cloudformation_cli_python_lib.log_delivery.logging.getLogger" ,
0 commit comments