2025-02-12 14:48:57 +01:00

29 lines
733 B
Nim

import pkg/chronos
import pkg/questionable
import pkg/questionable/results
import ../../../codexcrawler/services/dht
import ../../../codexcrawler/types
type MockDht* = ref object of Dht
routingTable*: seq[Nid]
getNeighborsArg*: ?Nid
getNeighborsReturn*: ?!GetNeighborsResponse
method getRoutingTableNodeIds*(d: MockDht): seq[Nid] =
return d.routingTable
method getNeighbors*(
d: MockDht, target: Nid
): Future[?!GetNeighborsResponse] {.async: (raises: []).} =
d.getNeighborsArg = some(target)
return d.getNeighborsReturn
method start*(d: MockDht): Future[?!void] {.async.} =
return success()
method stop*(d: MockDht): Future[?!void] {.async.} =
return success()
proc createMockDht*(): MockDht =
MockDht()