mirror of
https://github.com/PR0M3TH3AN/SeedPass.git
synced 2025-09-10 00:09:04 +00:00
67 lines
2.1 KiB
Python
67 lines
2.1 KiB
Python
import pytest
|
|
from pathlib import Path
|
|
|
|
from helpers import create_vault, TEST_SEED, TEST_PASSWORD
|
|
|
|
from seedpass.core.entry_management import EntryManager
|
|
from seedpass.core.backup import BackupManager
|
|
from seedpass.core.config_manager import ConfigManager
|
|
|
|
|
|
def setup_mgr(tmp_path: Path) -> EntryManager:
|
|
vault, _ = create_vault(tmp_path, TEST_SEED, TEST_PASSWORD)
|
|
cfg = ConfigManager(vault, tmp_path)
|
|
backup = BackupManager(tmp_path, cfg)
|
|
return EntryManager(vault, backup)
|
|
|
|
|
|
def test_add_totp_invalid_secret(tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_totp("bad", TEST_SEED, secret="notbase32!")
|
|
|
|
|
|
def test_add_ssh_key_validation_failure(monkeypatch, tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
monkeypatch.setattr(
|
|
"seedpass.core.entry_management.validate_ssh_key_pair", lambda p, q: False
|
|
)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_ssh_key("ssh", TEST_SEED)
|
|
|
|
|
|
def test_add_pgp_key_validation_failure(monkeypatch, tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
monkeypatch.setattr(
|
|
"seedpass.core.entry_management.validate_pgp_private_key", lambda p, q: False
|
|
)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_pgp_key("pgp", TEST_SEED, user_id="test")
|
|
|
|
|
|
def test_add_nostr_key_validation_failure(monkeypatch, tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
monkeypatch.setattr(
|
|
"seedpass.core.entry_management.validate_nostr_keys", lambda p, q: False
|
|
)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_nostr_key("nostr", TEST_SEED)
|
|
|
|
|
|
def test_add_seed_validation_failure(monkeypatch, tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
monkeypatch.setattr(
|
|
"seedpass.core.entry_management.validate_seed_phrase", lambda p: False
|
|
)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_seed("seed", TEST_SEED)
|
|
|
|
|
|
def test_add_managed_account_validation_failure(monkeypatch, tmp_path: Path):
|
|
mgr = setup_mgr(tmp_path)
|
|
monkeypatch.setattr(
|
|
"seedpass.core.entry_management.validate_seed_phrase", lambda p: False
|
|
)
|
|
with pytest.raises(ValueError):
|
|
mgr.add_managed_account("acct", TEST_SEED)
|