From fd1934b821874868b1dc44d5d6b9dc6c603b98ba Mon Sep 17 00:00:00 2001 From: Jesse Bannon Date: Wed, 8 Mar 2023 10:12:52 -0800 Subject: [PATCH] [BUGFIX] Create persist log directory if it does not exist (#513) --- src/ytdl_sub/cli/main.py | 2 ++ tests/unit/cli/test_main.py | 12 ++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/ytdl_sub/cli/main.py b/src/ytdl_sub/cli/main.py index 2e9d1f48..6e798ada 100644 --- a/src/ytdl_sub/cli/main.py +++ b/src/ytdl_sub/cli/main.py @@ -1,4 +1,5 @@ import gc +import os import sys from datetime import datetime from pathlib import Path @@ -54,6 +55,7 @@ def _maybe_write_subscription_log_file( if not success: Logger.log_exit_exception(exception=exception, log_filepath=persist_log_path) + os.makedirs(os.path.dirname(persist_log_path), exist_ok=True) FileHandler.copy(Logger.debug_log_filename(), persist_log_path) diff --git a/tests/unit/cli/test_main.py b/tests/unit/cli/test_main.py index 50d74f81..e8a98e70 100644 --- a/tests/unit/cli/test_main.py +++ b/tests/unit/cli/test_main.py @@ -1,4 +1,6 @@ +import os.path import re +import shutil import tempfile import time from pathlib import Path @@ -16,9 +18,15 @@ from ytdl_sub.utils.logger import Logger @pytest.fixture -def persist_logs_directory(): +def persist_logs_directory() -> str: + # Delete the temp_dir on creation with tempfile.TemporaryDirectory() as temp_dir: - yield temp_dir + pass + + yield temp_dir + + if os.path.isdir(temp_dir): + shutil.rmtree(temp_dir) @pytest.fixture