Complete test coverage for new code (#635).

This commit is contained in:
Dan Helfman
2025-01-27 12:25:28 -08:00
parent 71f1819f05
commit 7e344e6e0a
2 changed files with 75 additions and 4 deletions
+1 -1
View File
@@ -203,7 +203,7 @@ def get_log_prefix():
def set_log_prefix(prefix):
'''
Given a log prefix as a string, set it into the defaults for the formatters on all logging
handlers.
handlers. Note that this overwrites any existing defaults.
'''
for handler in logging.getLogger().handlers:
try:
+74 -3
View File
@@ -276,9 +276,7 @@ def test_get_log_prefix_with_no_prefix_does_not_raise():
flexmock(
handlers=[
flexmock(
formatter=flexmock(
_style=flexmock(_defaults=flexmock(get=lambda name: None))
)
formatter=flexmock(_style=flexmock(_defaults=flexmock(get=lambda name: None)))
),
flexmock(),
],
@@ -289,6 +287,79 @@ def test_get_log_prefix_with_no_prefix_does_not_raise():
assert module.get_log_prefix() == None
def test_set_log_prefix_updates_all_handlers():
styles = (
flexmock(_defaults=None),
flexmock(_defaults=None),
)
flexmock(module.logging).should_receive('getLogger').and_return(
flexmock(
handlers=[
flexmock(
formatter=flexmock(
_style=styles[0],
)
),
flexmock(
formatter=flexmock(
_style=styles[1],
)
),
],
removeHandler=lambda handler: None,
)
)
module.set_log_prefix('myprefix')
for style in styles:
assert style._defaults == {'prefix': 'myprefix: '}
def test_set_log_prefix_skips_handlers_without_a_formatter():
style = flexmock(_defaults=None)
flexmock(module.logging).should_receive('getLogger').and_return(
flexmock(
handlers=[
flexmock(
formatter=None,
),
flexmock(),
flexmock(
formatter=flexmock(
_style=style,
)
),
],
removeHandler=lambda handler: None,
)
)
module.set_log_prefix('myprefix')
assert style._defaults == {'prefix': 'myprefix: '}
def test_log_prefix_sets_prefix_and_then_restores_no_prefix_after():
flexmock(module).should_receive('get_log_prefix').and_return(None)
flexmock(module).should_receive('set_log_prefix').with_args('myprefix').once()
flexmock(module).should_receive('set_log_prefix').with_args(None).once()
with module.Log_prefix('myprefix'):
pass
def test_log_prefix_sets_prefix_and_then_restores_original_prefix_after():
flexmock(module).should_receive('get_log_prefix').and_return('original')
flexmock(module).should_receive('set_log_prefix').with_args('myprefix').once()
flexmock(module).should_receive('set_log_prefix').with_args('original').once()
with module.Log_prefix('myprefix'):
pass
def test_configure_logging_with_syslog_log_level_probes_for_log_socket_on_linux():
flexmock(module).should_receive('add_custom_log_levels')
flexmock(module.logging).ANSWER = module.ANSWER