UNPKG

@node-dlc/wire

Version:
45 lines (36 loc) 1.12 kB
import { BitField } from '@node-dlc/common'; import { ILogger, Logger } from '@node-dlc/logger'; import sinon from 'sinon'; import { Readable } from 'stream'; import { IWireMessage } from '../lib'; import { InitFeatureFlags } from '../lib/flags/InitFeatureFlags'; export class FakePeer extends Readable { public state; public send = sinon.stub(); public sendMessage = sinon.stub(); public pubkey = Buffer.alloc(32, 1); public localChains: Buffer[] = []; public localFeatures = new BitField<InitFeatureFlags>(); public remoteChains: Buffer[] = []; public remoteFeatures = new BitField<InitFeatureFlags>(); public constructor() { super({ objectMode: true }); } public _read() { // } public fakeMessage(msg: IWireMessage) { this.push(msg); } } export function createFakePeer() { return new FakePeer() as any; } export function createFakeLogger(): ILogger { const fake = sinon.createStubInstance(Logger); fake.sub = createFakeLogger as any; return fake; } export function wait(ms: number): Promise<void> { return new Promise((resolve) => setTimeout(resolve, ms)); }