mirror of
https://github.com/vacp2p/nim-libp2p-experimental.git
synced 2025-01-10 10:25:54 +00:00
4c6a123d31
* Add chronos trackers and used them to sanitize resource disposal * Chronos trackers for transport tests wip * No more chronos leaks in testtransport * Make tcp transport and test more robust when closing * Test async leaking tracking wip * Fix a regression in wire connect * Add chronos trackers to more tests and sanitize resource closure * Wip fixing floodsub tests * Floodsub wip * Made floodsub basically deterministic, hit a nim bug with captures tho * Wrap up floodsub tests refactor * Wrapping up * Add allFuturesThrowing utility * Fix missing allFuturesThrowing in noise tests! * Make tests green * attempt fixing gossipsub failing cases * Make sure to check also fanout in waitSub * More verbose traces * Gossipsub test improvments * Refactor TcpTransport remove asyncCheck * Add Connection trackers * Add stricter connection tracking, wip mplex fix * More asynccheck removal, in order to avoid connection leaks * bump chronicles requirement * Enable tracker dump to check CI output * Wait for more futures in testmplex * Remove tracker dump messages * add tryAndWarn utility, fix mplex issue with go interop * All allFuturesThrowing to directchat too * make sure to cleanup on transport close
16 lines
478 B
Nim
16 lines
478 B
Nim
import chronos
|
|
import ../../libp2p/standard_setup
|
|
export standard_setup
|
|
|
|
proc generateNodes*(num: Natural, gossip: bool = false): seq[Switch] =
|
|
for i in 0..<num:
|
|
result.add(newStandardSwitch(gossip = gossip))
|
|
|
|
proc subscribeNodes*(nodes: seq[Switch]) {.async.} =
|
|
var dials: seq[Future[void]]
|
|
for dialer in nodes:
|
|
for node in nodes:
|
|
if dialer.peerInfo.peerId != node.peerInfo.peerId:
|
|
dials.add(dialer.connect(node.peerInfo))
|
|
await allFutures(dials)
|