diff --git a/tests/common/log_helper/log_helper_test_imported.py b/tests/common/log_helper/log_helper_test_imported.py index 8820a3e..1be8181 100644 --- a/tests/common/log_helper/log_helper_test_imported.py +++ b/tests/common/log_helper/log_helper_test_imported.py @@ -4,7 +4,6 @@ by the main test file """ from oletools.common.log_helper import log_helper -import logging DEBUG_MESSAGE = 'imported: debug log' INFO_MESSAGE = 'imported: info log' @@ -14,7 +13,11 @@ CRITICAL_MESSAGE = 'imported: critical log' RESULT_MESSAGE = 'imported: result log' RESULT_TYPE = 'imported: result' -logger = log_helper.get_or_create_silent_logger('test_imported', logging.ERROR) +logger = log_helper.get_or_create_silent_logger('test_imported') + +def enable_logging(): + """Enable logging if imported by third party modules.""" + logger.setLevel(log_helper.NOTSET) def log(): diff --git a/tests/common/log_helper/log_helper_test_main.py b/tests/common/log_helper/log_helper_test_main.py index fb0ccca..c82f9bc 100644 --- a/tests/common/log_helper/log_helper_test_main.py +++ b/tests/common/log_helper/log_helper_test_main.py @@ -1,6 +1,7 @@ """ Test log_helpers """ import sys +import logging from tests.common.log_helper import log_helper_test_imported from oletools.common.log_helper import log_helper @@ -15,7 +16,13 @@ RESULT_TYPE = 'main: result' logger = log_helper.get_or_create_silent_logger('test_main') -def init_logging_and_log(args): +def enable_logging(): + """Enable logging if imported by third party modules.""" + logger.setLevel(log_helper.NOTSET) + log_helper_test_imported.enable_logging() + + +def main(args): """ Try to cover possible logging scenarios. For each scenario covered, here's the expected args and outcome: - Log without enabling: [''] @@ -36,13 +43,12 @@ def init_logging_and_log(args): throw = 'throw' in args percent_autoformat = '%-autoformat' in args + log_helper_test_imported.logger.setLevel(logging.ERROR) + if 'enable' in args: log_helper.enable_logging(use_json, level, stream=sys.stdout) - _log() - - if percent_autoformat: - logger.info('The %s is %d.', 'answer', 47) + do_log(percent_autoformat) if throw: raise Exception('An exception occurred before ending the logging') @@ -50,7 +56,10 @@ def init_logging_and_log(args): log_helper.end_logging() -def _log(): +def do_log(percent_autoformat=False): + if percent_autoformat: + logger.info('The %s is %d.', 'answer', 47) + logger.debug(DEBUG_MESSAGE) logger.info(INFO_MESSAGE) logger.warning(WARNING_MESSAGE) @@ -61,4 +70,4 @@ def _log(): if __name__ == '__main__': - init_logging_and_log(sys.argv[1:]) + main(sys.argv[1:])