2025-03-21 09:41:05 +01:00

38 lines
1.1 KiB
Nim

import pkg/ethers
import pkg/questionable
import ../../../codexcrawler/services/marketplace
import ../../../codexcrawler/types
logScope:
topics = "marketplace"
type MockMarketplaceService* = ref object of MarketplaceService
subNewRequestsCallback*: ?OnNewRequest
iterRequestsCallback*: ?OnNewRequest
requestInfoReturns*: ?RequestInfo
requestInfoRid*: Rid
method subscribeToNewRequests*(
m: MockMarketplaceService, onNewRequest: OnNewRequest
): Future[?!void] {.async: (raises: []).} =
m.subNewRequestsCallback = some(onNewRequest)
return success()
method iteratePastNewRequestEvents*(
m: MockMarketplaceService, onNewRequest: OnNewRequest
): Future[?!void] {.async: (raises: []).} =
m.iterRequestsCallback = some(onNewRequest)
return success()
method getRequestInfo*(
m: MockMarketplaceService, rid: Rid
): Future[?RequestInfo] {.async: (raises: []).} =
m.requestInfoRid = rid
return m.requestInfoReturns
proc createMockMarketplaceService*(): MockMarketplaceService =
MockMarketplaceService(
subNewRequestsCallback: none(OnNewRequest), iterRequestsCallback: none(OnNewRequest)
)