38 lines
1.1 KiB
Nim
Raw Normal View History

2025-03-18 14:55:52 +01:00
import pkg/ethers
import pkg/questionable
import ../../../codexcrawler/services/marketplace
2025-03-20 16:20:37 +01:00
import ../../../codexcrawler/types
2025-03-18 14:55:52 +01:00
logScope:
topics = "marketplace"
2025-03-18 15:55:58 +01:00
type MockMarketplaceService* = ref object of MarketplaceService
2025-03-20 15:27:17 +01:00
subNewRequestsCallback*: ?OnNewRequest
iterRequestsCallback*: ?OnNewRequest
2025-03-20 16:20:37 +01:00
requestInfoReturns*: ?RequestInfo
requestInfoRid*: Rid
2025-03-18 14:55:52 +01:00
2025-03-21 09:41:05 +01:00
method subscribeToNewRequests*(
m: MockMarketplaceService, onNewRequest: OnNewRequest
): Future[?!void] {.async: (raises: []).} =
2025-03-20 15:27:17 +01:00
m.subNewRequestsCallback = some(onNewRequest)
return success()
2025-03-21 09:41:05 +01:00
method iteratePastNewRequestEvents*(
m: MockMarketplaceService, onNewRequest: OnNewRequest
): Future[?!void] {.async: (raises: []).} =
2025-03-20 15:27:17 +01:00
m.iterRequestsCallback = some(onNewRequest)
return success()
2025-03-18 14:55:52 +01:00
2025-03-21 09:41:05 +01:00
method getRequestInfo*(
m: MockMarketplaceService, rid: Rid
): Future[?RequestInfo] {.async: (raises: []).} =
2025-03-20 16:20:37 +01:00
m.requestInfoRid = rid
return m.requestInfoReturns
2025-03-18 14:55:52 +01:00
proc createMockMarketplaceService*(): MockMarketplaceService =
2025-03-20 15:27:17 +01:00
MockMarketplaceService(
2025-03-21 09:41:05 +01:00
subNewRequestsCallback: none(OnNewRequest), iterRequestsCallback: none(OnNewRequest)
2025-03-20 15:27:17 +01:00
)