From ba201fb56026aa09a178ea4b40b8bc19125f1db0 Mon Sep 17 00:00:00 2001 From: Sasha Date: Thu, 11 May 2023 00:25:19 +0200 Subject: [PATCH] update mock --- src/pairing.spec.ts | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/src/pairing.spec.ts b/src/pairing.spec.ts index ce7e444..107d35d 100644 --- a/src/pairing.spec.ts +++ b/src/pairing.spec.ts @@ -1,6 +1,6 @@ import { HMACDRBG } from "@stablelib/hmac-drbg"; import { randomBytes } from "@stablelib/random"; -import type { IDecoder, IEncoder, IMessage, IProtoMessage, ISender } from "@waku/interfaces"; +import type { IDecoder, IEncoder, IMessage, IProtoMessage, IReceiver, ISender } from "@waku/interfaces"; import { expect } from "chai"; import { EventEmitter } from "eventemitter3"; import { pEvent } from "p-event"; @@ -43,24 +43,23 @@ describe("js-noise: pairing object", () => { }; }, }; - const decoderMap: { [key: string]: IDecoder } = {}; const responder = { - subscribe(decoder: IDecoder): Promise { - return new Promise((resolve) => { - decoderMap[decoder.contentTopic] = decoder; - resolve(); - }); - }, - async nextMessage(contentTopic: string): Promise { - const msg = await pEvent(msgEmitter, contentTopic); - const decodedMessage = await decoderMap[contentTopic].fromProtoObj(PUBSUB_TOPIC, msg); - return decodedMessage!; - }, - async stop(contentTopic: string): Promise { - // Do nothing. This is just a simulation - console.debug("stopping subscription to", contentTopic); - }, - }; + toSubscriptionIterator(decoder: IDecoder) { + async function* iterator() { + const msg = await pEvent(msgEmitter, decoder.contentTopic); + const decodedMessage = await decoder.fromProtoObj(PUBSUB_TOPIC, msg); + yield decodedMessage!; + } + + return { + iterator: iterator(), + stop() { + // Do nothing. This is just a simulation + console.debug("stopping subscription to", decoder.contentTopic); + }, + } + } + } as any as IReceiver; // ================= it("should pair", async function () {