24 lines
585 B
Python
24 lines
585 B
Python
import pytest
|
|
|
|
from apps.modelhub.crypto import (
|
|
CredentialEncryptionError,
|
|
decrypt_secret,
|
|
encrypt_secret,
|
|
mask_secret,
|
|
)
|
|
|
|
|
|
def test_encrypts_masks_and_decrypts_secret(settings):
|
|
encrypted = encrypt_secret("sk-example-1234")
|
|
|
|
assert encrypted != "sk-example-1234"
|
|
assert decrypt_secret(encrypted) == "sk-example-1234"
|
|
assert mask_secret(encrypted) == "****1234"
|
|
|
|
|
|
def test_missing_encryption_key_is_rejected(settings):
|
|
settings.AI_CREDENTIAL_ENCRYPTION_KEY = ""
|
|
|
|
with pytest.raises(CredentialEncryptionError):
|
|
encrypt_secret("secret")
|