Files
mywhoosh2garmin/tests/security/test_credentials.py
2026-08-15 09:26:40 +02:00

21 lines
648 B
Python

from cryptography.fernet import Fernet
from app.security.credentials import CredentialCipher
def test_round_trip_and_ciphertext_does_not_contain_plaintext() -> None:
cipher = CredentialCipher(Fernet.generate_key().decode("ascii"))
encrypted = cipher.encrypt("secret-password")
assert "secret-password" not in encrypted
assert cipher.decrypt(encrypted) == "secret-password"
def test_empty_credentials_are_rejected() -> None:
cipher = CredentialCipher(Fernet.generate_key().decode("ascii"))
try:
cipher.encrypt("")
except ValueError:
return
raise AssertionError("empty secrets must be rejected")