Adjust logging for tests

This commit is contained in:
thePR0M3TH3AN
2025-07-01 15:16:01 -04:00
parent 74df5f654c
commit d7ea493663
6 changed files with 42 additions and 17 deletions

View File

@@ -1,6 +1,7 @@
[pytest] [pytest]
log_cli = true log_cli = true
log_cli_level = INFO log_cli_level = WARNING
log_level = WARNING
testpaths = src/tests testpaths = src/tests
markers = markers =
network: tests that require network connectivity network: tests that require network connectivity

View File

@@ -21,17 +21,21 @@ try:
# ----------------------------------- # -----------------------------------
APP_DIR = Path.home() / ".seedpass" APP_DIR = Path.home() / ".seedpass"
APP_DIR.mkdir(exist_ok=True, parents=True) # Ensure the directory exists APP_DIR.mkdir(exist_ok=True, parents=True) # Ensure the directory exists
logging.info(f"Application directory created at {APP_DIR}") if logger.isEnabledFor(logging.DEBUG):
logger.info(f"Application directory created at {APP_DIR}")
except Exception as e: except Exception as e:
logging.error(f"Failed to create application directory: {e}") if logger.isEnabledFor(logging.DEBUG):
logging.error(traceback.format_exc()) # Log full traceback logger.error(f"Failed to create application directory: {e}")
logger.error(traceback.format_exc()) # Log full traceback
try: try:
PARENT_SEED_FILE = APP_DIR / "parent_seed.enc" # Encrypted parent seed PARENT_SEED_FILE = APP_DIR / "parent_seed.enc" # Encrypted parent seed
logging.info(f"Parent seed file path set to {PARENT_SEED_FILE}") if logger.isEnabledFor(logging.DEBUG):
logger.info(f"Parent seed file path set to {PARENT_SEED_FILE}")
except Exception as e: except Exception as e:
logging.error(f"Error setting file paths: {e}") if logger.isEnabledFor(logging.DEBUG):
logging.error(traceback.format_exc()) # Log full traceback logger.error(f"Error setting file paths: {e}")
logger.error(traceback.format_exc()) # Log full traceback
# ----------------------------------- # -----------------------------------
# Checksum Files for Integrity # Checksum Files for Integrity
@@ -40,10 +44,12 @@ try:
SCRIPT_CHECKSUM_FILE = ( SCRIPT_CHECKSUM_FILE = (
APP_DIR / "seedpass_script_checksum.txt" APP_DIR / "seedpass_script_checksum.txt"
) # Checksum for main script ) # Checksum for main script
logging.info(f"Checksum file path set: Script {SCRIPT_CHECKSUM_FILE}") if logger.isEnabledFor(logging.DEBUG):
logger.info(f"Checksum file path set: Script {SCRIPT_CHECKSUM_FILE}")
except Exception as e: except Exception as e:
logging.error(f"Error setting checksum file paths: {e}") if logger.isEnabledFor(logging.DEBUG):
logging.error(traceback.format_exc()) # Log full traceback logger.error(f"Error setting checksum file paths: {e}")
logger.error(traceback.format_exc()) # Log full traceback
# ----------------------------------- # -----------------------------------
# Password Generation Constants # Password Generation Constants

View File

@@ -3,12 +3,16 @@
import logging import logging
import traceback import traceback
logger = logging.getLogger(__name__)
try: try:
from .bip85 import BIP85 from .bip85 import BIP85
logging.info("BIP85 module imported successfully.") if logger.isEnabledFor(logging.DEBUG):
logger.info("BIP85 module imported successfully.")
except Exception as e: except Exception as e:
logging.error(f"Failed to import BIP85 module: {e}") if logger.isEnabledFor(logging.DEBUG):
logging.error(traceback.format_exc()) # Log full traceback logger.error(f"Failed to import BIP85 module: {e}")
logger.error(traceback.format_exc()) # Log full traceback
__all__ = ["BIP85"] __all__ = ["BIP85"]

7
src/tests/conftest.py Normal file
View File

@@ -0,0 +1,7 @@
import logging
import pytest
@pytest.fixture(autouse=True)
def mute_logging():
logging.getLogger().setLevel(logging.WARNING)

View File

@@ -2,6 +2,7 @@ import builtins
from itertools import cycle from itertools import cycle
import pytest import pytest
import logging
from utils import password_prompt from utils import password_prompt
@@ -15,10 +16,12 @@ def test_prompt_new_password(monkeypatch):
assert result == "goodpass" assert result == "goodpass"
def test_prompt_new_password_retry(monkeypatch): def test_prompt_new_password_retry(monkeypatch, caplog):
seq = iter(["pass1", "pass2", "passgood", "passgood"]) seq = iter(["pass1", "pass2", "passgood", "passgood"])
monkeypatch.setattr(password_prompt.getpass, "getpass", lambda prompt: next(seq)) monkeypatch.setattr(password_prompt.getpass, "getpass", lambda prompt: next(seq))
caplog.set_level(logging.WARNING)
result = password_prompt.prompt_new_password() result = password_prompt.prompt_new_password()
assert "User entered a password shorter" in caplog.text
assert result == "passgood" assert result == "passgood"

View File

@@ -3,6 +3,8 @@
import logging import logging
import traceback import traceback
logger = logging.getLogger(__name__)
try: try:
from .file_lock import exclusive_lock, shared_lock from .file_lock import exclusive_lock, shared_lock
from .key_derivation import ( from .key_derivation import (
@@ -15,10 +17,12 @@ try:
from .checksum import calculate_checksum, verify_checksum from .checksum import calculate_checksum, verify_checksum
from .password_prompt import prompt_for_password from .password_prompt import prompt_for_password
logging.info("Modules imported successfully.") if logger.isEnabledFor(logging.DEBUG):
logger.info("Modules imported successfully.")
except Exception as e: except Exception as e:
logging.error(f"Failed to import one or more modules: {e}") if logger.isEnabledFor(logging.DEBUG):
logging.error(traceback.format_exc()) # Log full traceback logger.error(f"Failed to import one or more modules: {e}")
logger.error(traceback.format_exc()) # Log full traceback
__all__ = [ __all__ = [
"derive_key_from_password", "derive_key_from_password",