mirror of
https://github.com/logos-messaging/js-noise.git
synced 2026-01-08 16:43:09 +00:00
update tests to use new API
This commit is contained in:
parent
08af91fe3c
commit
837f712cb6
@ -2,7 +2,7 @@ import { HMACDRBG } from "@stablelib/hmac-drbg";
|
|||||||
import { randomBytes } from "@stablelib/random";
|
import { randomBytes } from "@stablelib/random";
|
||||||
import { expect } from "chai";
|
import { expect } from "chai";
|
||||||
import { EventEmitter } from "eventemitter3";
|
import { EventEmitter } from "eventemitter3";
|
||||||
import { Decoder, Encoder, Message } from "js-waku/lib/interfaces";
|
import { IDecoder, IEncoder, IMessage } from "@waku/interfaces";
|
||||||
import { pEvent } from "p-event";
|
import { pEvent } from "p-event";
|
||||||
import { equals as uint8ArrayEquals } from "uint8arrays/equals";
|
import { equals as uint8ArrayEquals } from "uint8arrays/equals";
|
||||||
|
|
||||||
@ -24,14 +24,14 @@ describe("js-noise: pairing object", () => {
|
|||||||
// Simulate waku. This code is not meant to be used IRL
|
// Simulate waku. This code is not meant to be used IRL
|
||||||
const msgEmitter = new EventEmitter();
|
const msgEmitter = new EventEmitter();
|
||||||
const sender = {
|
const sender = {
|
||||||
async publish(encoder: Encoder, msg: Message): Promise<void> {
|
async publish(encoder: IEncoder, msg: IMessage): Promise<void> {
|
||||||
const protoMsg = await encoder.encodeProto(msg);
|
const protoMsg = await encoder.toProtoObj(msg);
|
||||||
msgEmitter.emit(encoder.contentTopic, protoMsg);
|
msgEmitter.emit(encoder.contentTopic, protoMsg);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
const decoderMap: { [key: string]: Decoder<NoiseHandshakeMessage> } = {};
|
const decoderMap: { [key: string]: IDecoder<NoiseHandshakeMessage> } = {};
|
||||||
const responder = {
|
const responder = {
|
||||||
subscribe(decoder: Decoder<NoiseHandshakeMessage>): Promise<void> {
|
subscribe(decoder: IDecoder<NoiseHandshakeMessage>): Promise<void> {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
decoderMap[decoder.contentTopic] = decoder;
|
decoderMap[decoder.contentTopic] = decoder;
|
||||||
resolve();
|
resolve();
|
||||||
@ -39,7 +39,7 @@ describe("js-noise: pairing object", () => {
|
|||||||
},
|
},
|
||||||
async nextMessage(contentTopic: string): Promise<NoiseHandshakeMessage> {
|
async nextMessage(contentTopic: string): Promise<NoiseHandshakeMessage> {
|
||||||
const msg = await pEvent(msgEmitter, contentTopic);
|
const msg = await pEvent(msgEmitter, contentTopic);
|
||||||
const decodedMessage = await decoderMap[contentTopic].decode(msg);
|
const decodedMessage = await decoderMap[contentTopic].fromProtoObj(msg);
|
||||||
return decodedMessage!;
|
return decodedMessage!;
|
||||||
},
|
},
|
||||||
async stop(contentTopic: string): Promise<void> {
|
async stop(contentTopic: string): Promise<void> {
|
||||||
@ -79,17 +79,17 @@ describe("js-noise: pairing object", () => {
|
|||||||
for (let i = 0; i < 10 * MessageNametagBufferSize; i++) {
|
for (let i = 0; i < 10 * MessageNametagBufferSize; i++) {
|
||||||
// Alice writes to Bob
|
// Alice writes to Bob
|
||||||
let message = randomBytes(32, rng);
|
let message = randomBytes(32, rng);
|
||||||
let encodedMsg = await aliceEncoder.encode({ payload: message });
|
let encodedMsg = await aliceEncoder.toWire({ payload: message });
|
||||||
let readMessageProto = await bobDecoder.decodeProto(encodedMsg!);
|
let readMessageProto = await bobDecoder.fromWireToProtoObj(encodedMsg!);
|
||||||
let readMessage = await bobDecoder.decode(readMessageProto!);
|
let readMessage = await bobDecoder.fromProtoObj(readMessageProto!);
|
||||||
|
|
||||||
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
||||||
|
|
||||||
// Bob writes to Alice
|
// Bob writes to Alice
|
||||||
message = randomBytes(32, rng);
|
message = randomBytes(32, rng);
|
||||||
encodedMsg = await bobEncoder.encode({ payload: message });
|
encodedMsg = await bobEncoder.toWire({ payload: message });
|
||||||
readMessageProto = await aliceDecoder.decodeProto(encodedMsg!);
|
readMessageProto = await aliceDecoder.fromWireToProtoObj(encodedMsg!);
|
||||||
readMessage = await aliceDecoder.decode(readMessageProto!);
|
readMessage = await aliceDecoder.fromProtoObj(readMessageProto!);
|
||||||
|
|
||||||
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -113,12 +113,12 @@ describe("Waku Noise Sessions", () => {
|
|||||||
// We prepare a Waku message from Alice's payload2
|
// We prepare a Waku message from Alice's payload2
|
||||||
// At this point wakuMsg is sent over the Waku network and is received
|
// At this point wakuMsg is sent over the Waku network and is received
|
||||||
// We simulate this by creating the ProtoBuffer from wakuMsg
|
// We simulate this by creating the ProtoBuffer from wakuMsg
|
||||||
let wakuMsgBytes = await encoder.encode({});
|
let wakuMsgBytes = await encoder.toWire({});
|
||||||
|
|
||||||
// We decode the WakuMessage from the ProtoBuffer
|
// We decode the WakuMessage from the ProtoBuffer
|
||||||
let decoder = new NoiseHandshakeDecoder(contentTopic);
|
let decoder = new NoiseHandshakeDecoder(contentTopic);
|
||||||
let wakuMsgProto = await decoder.decodeProto(wakuMsgBytes!);
|
let wakuMsgProto = await decoder.fromWireToProtoObj(wakuMsgBytes!);
|
||||||
let v2Msg = await decoder.decode(wakuMsgProto!);
|
let v2Msg = await decoder.fromProtoObj(wakuMsgProto!);
|
||||||
|
|
||||||
expect(v2Msg!.contentTopic).to.be.equals(contentTopic);
|
expect(v2Msg!.contentTopic).to.be.equals(contentTopic);
|
||||||
expect(v2Msg?.payloadV2.equals(aliceStep.payload2)).to.be.true;
|
expect(v2Msg?.payloadV2.equals(aliceStep.payload2)).to.be.true;
|
||||||
@ -155,12 +155,12 @@ describe("Waku Noise Sessions", () => {
|
|||||||
|
|
||||||
// At this point wakuMsg is sent over the Waku network and is received
|
// At this point wakuMsg is sent over the Waku network and is received
|
||||||
// We simulate this by creating the ProtoBuffer from wakuMsg
|
// We simulate this by creating the ProtoBuffer from wakuMsg
|
||||||
wakuMsgBytes = await encoder.encode({});
|
wakuMsgBytes = await encoder.toWire({});
|
||||||
|
|
||||||
// We decode the WakuMessage from the ProtoBuffer
|
// We decode the WakuMessage from the ProtoBuffer
|
||||||
decoder = new NoiseHandshakeDecoder(contentTopic);
|
decoder = new NoiseHandshakeDecoder(contentTopic);
|
||||||
wakuMsgProto = await decoder.decodeProto(wakuMsgBytes!);
|
wakuMsgProto = await decoder.fromWireToProtoObj(wakuMsgBytes!);
|
||||||
v2Msg = await decoder.decode(wakuMsgProto!);
|
v2Msg = await decoder.fromProtoObj(wakuMsgProto!);
|
||||||
|
|
||||||
expect(v2Msg?.payloadV2.equals(bobStep.payload2)).to.be.true;
|
expect(v2Msg?.payloadV2.equals(bobStep.payload2)).to.be.true;
|
||||||
|
|
||||||
@ -192,12 +192,12 @@ describe("Waku Noise Sessions", () => {
|
|||||||
|
|
||||||
// At this point wakuMsg is sent over the Waku network and is received
|
// At this point wakuMsg is sent over the Waku network and is received
|
||||||
// We simulate this by creating the ProtoBuffer from wakuMsg
|
// We simulate this by creating the ProtoBuffer from wakuMsg
|
||||||
wakuMsgBytes = await encoder.encode({});
|
wakuMsgBytes = await encoder.toWire({});
|
||||||
|
|
||||||
// We decode the WakuMessage from the ProtoBuffer
|
// We decode the WakuMessage from the ProtoBuffer
|
||||||
decoder = new NoiseHandshakeDecoder(contentTopic);
|
decoder = new NoiseHandshakeDecoder(contentTopic);
|
||||||
wakuMsgProto = await decoder.decodeProto(wakuMsgBytes!);
|
wakuMsgProto = await decoder.fromWireToProtoObj(wakuMsgBytes!);
|
||||||
v2Msg = await decoder.decode(wakuMsgProto!);
|
v2Msg = await decoder.fromProtoObj(wakuMsgProto!);
|
||||||
|
|
||||||
expect(v2Msg?.payloadV2.equals(aliceStep.payload2)).to.be.true;
|
expect(v2Msg?.payloadV2.equals(aliceStep.payload2)).to.be.true;
|
||||||
|
|
||||||
@ -229,17 +229,17 @@ describe("Waku Noise Sessions", () => {
|
|||||||
for (let i = 0; i < 10 * MessageNametagBufferSize; i++) {
|
for (let i = 0; i < 10 * MessageNametagBufferSize; i++) {
|
||||||
// Alice writes to Bob
|
// Alice writes to Bob
|
||||||
let message = randomBytes(32, rng);
|
let message = randomBytes(32, rng);
|
||||||
let encodedMsg = await aliceEncoder.encode({ payload: message });
|
let encodedMsg = await aliceEncoder.toWire({ payload: message });
|
||||||
let readMessageProto = await bobDecoder.decodeProto(encodedMsg!);
|
let readMessageProto = await bobDecoder.fromWireToProtoObj(encodedMsg!);
|
||||||
let readMessage = await bobDecoder.decode(readMessageProto!);
|
let readMessage = await bobDecoder.fromProtoObj(readMessageProto!);
|
||||||
|
|
||||||
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
||||||
|
|
||||||
// Bob writes to Alice
|
// Bob writes to Alice
|
||||||
message = randomBytes(32, rng);
|
message = randomBytes(32, rng);
|
||||||
encodedMsg = await bobEncoder.encode({ payload: message });
|
encodedMsg = await bobEncoder.toWire({ payload: message });
|
||||||
readMessageProto = await aliceDecoder.decodeProto(encodedMsg!);
|
readMessageProto = await aliceDecoder.fromWireToProtoObj(encodedMsg!);
|
||||||
readMessage = await aliceDecoder.decode(readMessageProto!);
|
readMessage = await aliceDecoder.fromProtoObj(readMessageProto!);
|
||||||
|
|
||||||
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
expect(uint8ArrayEquals(message, readMessage!.payload)).to.be.true;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user