From 3af8b672c6f1508b8bccdefb0ed5b223b251619a Mon Sep 17 00:00:00 2001 From: Csaba Kiraly Date: Mon, 12 Jun 2023 12:29:56 +0200 Subject: [PATCH] DAS: introduce the sample async procedure Signed-off-by: Csaba Kiraly --- das/das.nim | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/das/das.nim b/das/das.nim index 866ac75..b9f28ad 100644 --- a/das/das.nim +++ b/das/das.nim @@ -155,9 +155,10 @@ when isMainModule: futs.add(fut) return futs - for n in 1 ..< nodecount: + proc sample(n: discv5_protocol.Protocol): Future[(bool, int, Duration)] {.async.} = + ## Sample and return detailed results of sampling let startTime = Moment.now() - var futs = startSampling(nodes[n][0]) + var futs = startSampling(n) # test is passed if all segments are retrieved in time let pass = await allFutures(futs).withTimeout(sampling_timeout) @@ -166,7 +167,12 @@ when isMainModule: if f.finished(): passcount += 1 - info "sample", by = n, pass, cnt = passcount, time = Moment.now() - startTime + let time = Moment.now() - startTime + info "sample", by = n.localNode, pass, cnt = passcount, time + return (pass, passcount, time) + + for n in 1 ..< nodecount: + discard await sample(nodes[n][0]) waitfor main()