11import logging
22import os
33import time
4+ import pytest
45
6+ import structlog
7+ from structlog .testing import ReturnLogger
58from freezegun import freeze_time
9+
610from nypl_py_utils .functions .log_helper import create_log
711
812
913@freeze_time ('2023-01-01 19:00:00' )
1014class TestLogHelper :
15+ @pytest .fixture
16+ def mock_logger (self , mocker ):
17+ mocker .patch ('src.nypl_py_utils.functions.log_helper.structlog.get_logger' , return_value = ReturnLogger )
18+
19+ def test_json_logging (self , mock_logger ):
20+ logger = create_log ('test_log' , json = True )
21+ log = logger .info ('testtt' , some = "json" )
22+ print ('capture_logs' , log )
23+ assert False
24+ # assert log.get("message") == 'test'
25+ # assert log.get("some") == 'json'
26+ # assert log.get('level') == 'info'
27+ # assert log.get('timestamp') == '2023-01-01 19:00:00Z'
1128
1229 def test_default_logging (self , caplog ):
1330 logger = create_log ('test_log' )
@@ -18,6 +35,7 @@ def test_default_logging(self, caplog):
1835 # freeze_time changes the utc time, while the logger uses local time by
1936 # default, so force the logger to use utc time
2037 logger .handlers [0 ].formatter .converter = time .gmtime
38+ print (caplog .records )
2139 assert len (caplog .records ) == 1
2240 assert logger .handlers [0 ].format (caplog .records [0 ]) == \
2341 '2023-01-01 19:00:00,000 | test_log | INFO: Test info message'
0 commit comments