unittest_for_shared_utils #55

Merged
brian merged 2 commits from unittest_for_shared_utils into main 2024-10-20 21:43:06 +02:00
2 changed files with 39 additions and 2 deletions
+1 -2
View File
@@ -1,5 +1,4 @@
"""Definition of setup_logging function."""
from __future__ import annotations
import logging
import os
@@ -17,7 +16,7 @@ def setup_logging() -> None:
'%(message)s'
)
datefmt = '%Y-%m-%d %H:%M:%S'
logging.basicConfig(format=fmt, datefmt=datefmt, level=level)
logging.basicConfig(format=fmt, datefmt=datefmt, level=level, force=True)
# change levels for modules that spam the log
logging.getLogger('pymongo').setLevel(logging.WARNING)
logging.getLogger('urllib3').setLevel(logging.INFO)
+38
View File
@@ -0,0 +1,38 @@
"""Definition of tests for setup_logging function."""
import logging
import os
import unittest
from shared.utils import setup_logging
class TestFunctionSetupLogging(unittest.TestCase):
"""Testing function setup_logging."""
def setUp(self):
# set log level names to test
self.env_var_name = 'LOG_LEVEL'
self.log_level_list = [
'debug',
'info',
'error',
]
self.wrong_log_level_name = 'weird_name'
def test_log_level_gets_set(self):
"""Test that function updates the logging level of the root logger."""
for log_level in self.log_level_list:
# set env var
os.environ[self.env_var_name] = log_level
# execute function
setup_logging()
# get logger
logger = logging.getLogger()
# check log level
level_number = getattr(logging, log_level.upper())
self.assertEqual(logger.getEffectiveLevel(), level_number)
if __name__ == '__main__':
unittest.main()