Skip to content

Commit cc3f2f5

Browse files
authored
Update references to Seq No to use hex string instead of int (WebOfTrust#169)
* Update references to Seq No to use hex string instead of int Signed-off-by: pfeairheller <pfeairheller@gmail.com> * Unit test for query by sequence number Signed-off-by: pfeairheller <pfeairheller@gmail.com> --------- Signed-off-by: pfeairheller <pfeairheller@gmail.com>
1 parent d8cb7fc commit cc3f2f5

File tree

4 files changed

+18
-4
lines changed

4 files changed

+18
-4
lines changed

src/keria/app/agenting.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -705,7 +705,8 @@ def recur(self, tyme, deeds=None):
705705
pre = msg["pre"]
706706

707707
if "sn" in msg:
708-
seqNoDo = querying.SeqNoQuerier(hby=self.hby, hab=self.agentHab, pre=pre, sn=msg["sn"])
708+
sn = int(msg['sn'], 16)
709+
seqNoDo = querying.SeqNoQuerier(hby=self.hby, hab=self.agentHab, pre=pre, sn=sn)
709710
self.extend([seqNoDo])
710711
elif "anchor" in msg:
711712
pass

src/keria/core/longrunning.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,8 @@ def status(self, op):
286286
else:
287287
kever = self.hby.kevers[op.oid]
288288
if "sn" in op.metadata:
289-
if kever.sn >= op.metadata["sn"]:
289+
sn = int(op.metadata['sn'], 16)
290+
if kever.sn >= sn:
290291
operation.done = True
291292
operation.response = asdict(kever.state())
292293
else:
@@ -304,7 +305,7 @@ def status(self, op):
304305
ksn = self.hby.db.ksns.get(keys=(saider.qb64,))
305306
break
306307

307-
if ksn and ksn.ked['d'] == kever.serder.said:
308+
if ksn and ksn.d == kever.serder.said:
308309
operation.done = True
309310
operation.response = asdict(kever.state())
310311
else:

tests/app/test_agenting.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,7 @@ def test_querier(helpers):
367367
doist = doing.Doist(limit=1.0, tock=0.03125, real=True)
368368
deeds = doist.enter(doers=[qry])
369369

370-
qry.queries.append(dict(pre="EI7AkI40M11MS7lkTCb10JC9-nDt-tXwQh44OHAFlv_9", sn=1))
370+
qry.queries.append(dict(pre="EI7AkI40M11MS7lkTCb10JC9-nDt-tXwQh44OHAFlv_9", sn="1"))
371371
qry.recur(1.0, deeds=deeds)
372372

373373
assert len(qry.doers) == 1

tests/core/test_longrunning.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from keri.help import helping
2+
13
from keria.app import aiding
24
from keri.kering import ValidationError
35
from keria.core import longrunning
@@ -156,6 +158,16 @@ def test_operations(helpers):
156158
assert isinstance(res.json, list)
157159
assert len(res.json) == 0
158160

161+
op = agent.monitor.status(
162+
longrunning.Op(type='query', oid=recp, start=helping.nowIso8601(), metadata={'sn': '0'}))
163+
assert op.name == f"query.{recp}"
164+
assert op.done is True
165+
166+
op = agent.monitor.status(
167+
longrunning.Op(type='query', oid=recp, start=helping.nowIso8601(), metadata={'sn': '4'}))
168+
assert op.name == f"query.{recp}"
169+
assert op.done is False
170+
159171

160172
def test_error(helpers):
161173
with helpers.openKeria() as (agency, agent, app, client):

0 commit comments

Comments
 (0)