-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathtest_demo_rotate_keys.py
83 lines (72 loc) · 2.35 KB
/
test_demo_rotate_keys.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import pytest as pytest
from didcomm import (
ResolversConfig,
Message,
FromPrior,
pack_encrypted,
PackEncryptedConfig,
PackEncryptedParameters,
unpack_forward,
SecretsResolverInMemory,
unpack,
)
from tests.test_vectors.common import CHARLIE_DID, BOB_DID, ALICE_DID
from tests.test_vectors.secrets.mock_secrets_resolver_alice import (
MockSecretsResolverAlice,
ALICE_SECRET_AUTH_KEY_ED25519,
)
from tests.test_vectors.secrets.mock_secrets_resolver_charlie import (
MockSecretsResolverCharlie,
)
class MockSecretsResolverAliceNewDid(SecretsResolverInMemory):
def __init__(self):
super().__init__(
secrets=list(MockSecretsResolverAlice()._secrets.values())
+ list(MockSecretsResolverCharlie()._secrets.values())
)
@pytest.fixture()
def secrets_resolver_alice_with_new_did():
return MockSecretsResolverAliceNewDid()
@pytest.fixture()
def resolvers_config_alice_with_new_did(
secrets_resolver_alice_with_new_did, did_resolver
):
return ResolversConfig(
secrets_resolver=secrets_resolver_alice_with_new_did, did_resolver=did_resolver
)
@pytest.mark.asyncio
async def test_demo_attachments(
resolvers_config_alice_with_new_did,
resolvers_config_bob,
resolvers_config_mediator1,
):
# ALICE
frm_prior = FromPrior(iss=ALICE_DID, sub=CHARLIE_DID)
message = Message(
body={"aaa": 1, "bbb": 2},
id="1234567890",
type="my-protocol/1.0",
frm=CHARLIE_DID,
to=[BOB_DID],
created_time=1516269022,
expires_time=1516385931,
from_prior=frm_prior,
)
pack_result = await pack_encrypted(
resolvers_config=resolvers_config_alice_with_new_did,
message=message,
frm=CHARLIE_DID,
to=BOB_DID,
pack_config=PackEncryptedConfig(),
pack_params=PackEncryptedParameters(
from_prior_issuer_kid=ALICE_SECRET_AUTH_KEY_ED25519.kid
),
)
packed_msg = pack_result.packed_msg
print(f"Sending ${packed_msg} to ${pack_result.service_metadata.service_endpoint}")
# BOB's MEDIATOR
forward_bob = await unpack_forward(resolvers_config_mediator1, packed_msg, True)
print(f"Got {forward_bob.forwarded_msg}")
# BOB
unpack_result = await unpack(resolvers_config_bob, forward_bob.forwarded_msg)
print(f"Got ${unpack_result.message}")