Add test for configure_debug_logging

Since we can't directly test it
This commit is contained in:
James R. Barlow
2021-01-09 16:02:12 -08:00
parent 91aa175602
commit c7c447be66
2 changed files with 25 additions and 2 deletions
+4 -2
View File
@@ -302,7 +302,7 @@ def exec_concurrent(context: PdfContext):
copy_final(pdf, options.output_file, context)
def configure_debug_logging(log_filename, prefix: str = ''):
def configure_debug_logging(log_filename: Path, prefix: str = ''):
"""
Create a debug log file at a specified location.
@@ -340,7 +340,9 @@ def run_pipeline(options, *, plugin_manager, api=False):
# Debug log for command line interface only with verbose output
# See https://github.com/pytest-dev/pytest/issues/5502 for why we skip this
# when pytest is running
debug_log_handler = configure_debug_logging(Path(work_folder) / "debug.log")
debug_log_handler = configure_debug_logging(
Path(work_folder) / "debug.log"
) # pragma: no cover
pikepdf_enable_mmap()
+21
View File
@@ -0,0 +1,21 @@
# © 2021 James R. Barlow: github.com/jbarlow83
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
import logging
import pytest
from ocrmypdf._sync import configure_debug_logging
def test_debug_logging(tmp_path):
# Just exercise the debug logger but don't validate it
# See https://github.com/pytest-dev/pytest/issues/5502 for pytest logging quirks
prefix = 'test_debug_logging'
log = logging.getLogger(prefix)
handler = configure_debug_logging(tmp_path, prefix)
log.info("test message")
log.removeHandler(handler)