@@ -55,6 +55,29 @@ def test_missing_configuration_raises() -> None:
5555 _ = field ._keyset_manager .aead_primitive
5656
5757
58+ def test_missing_keyset_name_raises (keysets : dict [str , dict [str , Any ]]) -> None :
59+ registry = KeysetRegistry (keysets )
60+ field = EncryptedString (registry = registry , keyset = "missing" )
61+ with pytest .raises (ConfigurationError ):
62+ _ = field ._keyset_manager .aead_primitive
63+
64+
65+ def test_missing_keyset_path_raises (tmp_path : Path ) -> None :
66+ registry = KeysetRegistry ({"default" : {"path" : str (tmp_path / "missing.json" ), "cleartext" : True }})
67+ field = EncryptedString (registry = registry )
68+ with pytest .raises (ConfigurationError ):
69+ _ = field ._keyset_manager .aead_primitive
70+
71+
72+ def test_encrypted_keyset_requires_master_key () -> None :
73+ registry = KeysetRegistry (
74+ {"default" : {"path" : str (_fixture_path ("aead_keyset.json" )), "cleartext" : False }}
75+ )
76+ field = EncryptedString (registry = registry )
77+ with pytest .raises (ConfigurationError ):
78+ _ = field ._keyset_manager .aead_primitive
79+
80+
5881def test_encrypt_decrypt_string_roundtrip (keysets : dict [str , dict [str , Any ]]) -> None :
5982 registry = KeysetRegistry (keysets )
6083 field = EncryptedString (registry = registry )
0 commit comments