|
7 | 7 |
|
8 | 8 | """
|
9 | 9 | import json
|
| 10 | +from pprint import pprint |
10 | 11 |
|
11 | 12 | from hio.base import doing
|
12 |
| -from keri.core import coring |
| 13 | +from keri.core import coring, eventing |
13 | 14 | from keri.peer.exchanging import exchange
|
14 | 15 |
|
15 | 16 | from keria.app import aiding
|
@@ -49,9 +50,11 @@ def test_exchange_end(helpers):
|
49 | 50 | aid = op["response"]
|
50 | 51 | pre = aid['i']
|
51 | 52 | assert pre == "EHgwVwQT15OJvilVvW57HE4w0-GPs_Stj2OFoAHZSysY"
|
52 |
| - serder, signers = helpers.incept(salt, "signify:aid", pidx=0) |
| 53 | + serder, sigers = helpers.incept(salt, "signify:aid", pidx=0) |
53 | 54 | assert serder.pre == pre
|
54 |
| - signer = signers[0] |
| 55 | + signer = sigers[0] |
| 56 | + |
| 57 | + ims = eventing.messagize(serder=serder, sigers=sigers) |
55 | 58 |
|
56 | 59 | salt1 = b'abcdef0123456789'
|
57 | 60 | op = helpers.createAid(client, "aid2", salt1)
|
@@ -145,3 +148,43 @@ def test_exchange_end(helpers):
|
145 | 148 | assert res.status_code == 200
|
146 | 149 | serder = coring.Serder(ked=res.json['exn'])
|
147 | 150 | assert serder.said == exn.said
|
| 151 | + |
| 152 | + payload = dict( |
| 153 | + m="Please give me credential", |
| 154 | + s=QVI_SAID, |
| 155 | + a=dict(), |
| 156 | + i=pre1 |
| 157 | + ) |
| 158 | + |
| 159 | + embeds = dict( |
| 160 | + icp=ims, |
| 161 | + ) |
| 162 | + exn, atc = exchange(route="/ipex/offer", payload=payload, sender=pre, embeds=embeds) |
| 163 | + sig = signer.sign(ser=exn.raw, index=0).qb64 |
| 164 | + |
| 165 | + body = dict( |
| 166 | + exn=exn.ked, |
| 167 | + sigs=[sig], |
| 168 | + atc=atc.decode("utf-8"), |
| 169 | + rec=[pre1], |
| 170 | + tpc="/ipex" |
| 171 | + ) |
| 172 | + |
| 173 | + res = client.simulate_post(path="/identifiers/aid1/exchanges", json=body) |
| 174 | + assert res.status_code == 202 |
| 175 | + assert len(agent.exchanges) == 1 |
| 176 | + assert res.json == exn.ked |
| 177 | + |
| 178 | + doist.recur(deeds=deeds) |
| 179 | + agent.exnseeker.index(exn.said) |
| 180 | + |
| 181 | + body = json.dumps({'sort': ['-dt']}).encode("utf-8") |
| 182 | + res = client.simulate_post(f"/identifiers/aid1/exchanges/query", body=body) |
| 183 | + assert res.status_code == 200 |
| 184 | + assert len(res.json) == 3 |
| 185 | + |
| 186 | + offer = res.json[2] |
| 187 | + assert offer['pathed'] == {'icp': '-AABADzZ23DyzL4TLQqTtjx5IKkWwRt3_NYHHIqc9g1rBjwr'} |
| 188 | + |
| 189 | + |
| 190 | + |
0 commit comments