diff --git a/src/tests/test_key_value_entry.py b/src/tests/test_key_value_entry.py index 56f1e8e..b1324ea 100644 --- a/src/tests/test_key_value_entry.py +++ b/src/tests/test_key_value_entry.py @@ -37,10 +37,30 @@ def test_add_and_modify_key_value(): "tags": [], } + # Appears in listing + assert em.list_entries() == [(idx, "API entry", None, None, False)] + + # Modify key and value em.modify_entry(idx, key="api_key2", value="def456") updated = em.retrieve_entry(idx) assert updated["key"] == "api_key2" assert updated["value"] == "def456" + # Archive and ensure it disappears from the default listing + em.archive_entry(idx) + archived = em.retrieve_entry(idx) + assert archived["archived"] is True + assert em.list_entries() == [] + assert em.list_entries(include_archived=True) == [ + (idx, "API entry", None, None, True) + ] + + # Restore and ensure it reappears + em.restore_entry(idx) + restored = em.retrieve_entry(idx) + assert restored["archived"] is False + assert em.list_entries() == [(idx, "API entry", None, None, False)] + + # Values are not searchable results = em.search_entries("def456") assert results == [] diff --git a/src/tests/test_managed_account_entry.py b/src/tests/test_managed_account_entry.py index abeadac..52b1449 100644 --- a/src/tests/test_managed_account_entry.py +++ b/src/tests/test_managed_account_entry.py @@ -41,6 +41,9 @@ def test_add_and_get_managed_account_seed(): assert fp assert (tmp_path / "accounts" / fp).exists() + # Appears in listing + assert mgr.list_entries() == [(idx, "acct", None, None, False)] + phrase_a = mgr.get_managed_account_seed(idx, TEST_SEED) phrase_b = mgr.get_managed_account_seed(idx, TEST_SEED) assert phrase_a == phrase_b @@ -51,6 +54,23 @@ def test_add_and_get_managed_account_seed(): assert phrase_a == expected assert generate_fingerprint(phrase_a) == fp + # Archive and ensure it disappears from default listing + mgr.archive_entry(idx) + archived = mgr.retrieve_entry(idx) + assert archived["archived"] is True + assert mgr.list_entries() == [] + assert mgr.list_entries(include_archived=True) == [ + (idx, "acct", None, None, True) + ] + + # Restore and ensure deterministic derivation is unchanged + mgr.restore_entry(idx) + restored = mgr.retrieve_entry(idx) + assert restored["archived"] is False + assert mgr.list_entries() == [(idx, "acct", None, None, False)] + phrase_c = mgr.get_managed_account_seed(idx, TEST_SEED) + assert phrase_c == expected + def test_load_and_exit_managed_account(monkeypatch): with TemporaryDirectory() as tmpdir: