From 123fde174d4a51833475a5639bf5f5b34a419b79 Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Mon, 6 Jan 2020 01:46:19 -0800 Subject: [PATCH] Don't use debug.log in pytest pytest does not reset the state of logging if we install a file handler, which will cause FileNotFoundError after the temporary folder is removed. Semi-related: https://github.com/pytest-dev/pytest/issues/5502 --- src/ocrmypdf/_sync.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ocrmypdf/_sync.py b/src/ocrmypdf/_sync.py index 9aa99edd..960e3220 100644 --- a/src/ocrmypdf/_sync.py +++ b/src/ocrmypdf/_sync.py @@ -344,7 +344,7 @@ def configure_debug_logging(log_filename, prefix=''): ) log_file_handler.setFormatter(formatter) logging.getLogger(prefix).addHandler(log_file_handler) - return + return log_file_handler def run_pipeline(options, api=False): @@ -357,7 +357,9 @@ def run_pipeline(options, api=False): options.jobs = available_cpu_count() work_folder = mkdtemp(prefix="com.github.ocrmypdf.") - if options.keep_temporary_files or options.verbose >= 1: + if (options.keep_temporary_files or options.verbose >= 1) and not os.environ.get( + 'PYTEST_CURRENT_TEST', '' + ): configure_debug_logging(Path(work_folder) / "debug.log") try: