wspromisify
Version:
Wraps your WebSockets into Promise-based class with full d.ts typings on client & server
19 lines (16 loc) • 664 B
text/typescript
import { createNew } from '../utils.js'
import mockServer from '../mock/server'
import { equals } from 'pepka'
import { test } from '../suite'
/** Sends massages if they were .send() before connection is estabilished. */
test('lazy send before open queued.', () => new Promise(async (ff, rj) => {
const {port} = await mockServer()
let to = setTimeout(() => rj('cannot create'), 2e2)
const ws = createNew({lazy: true}, port)
clearTimeout(to)
const msg = {echo: true, msg: 'hello!'}
to = setTimeout(() => rj('cannot send'), 2e2)
const response = await ws.send(msg)
clearTimeout(to)
if(equals(response, msg)) ff(); else rj()
}))