fake-node-socket
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

fake-node-socket

When writing unit tests, i get pretty annoyed i cant test with an actual socket.

So, i write a small lib that fakes a socket so i can use unit as if it was an actual socket. Currently the close/open stuff isnt implemented and its pretty basic.

This code comes straight from the unit test:

import {Socket} from "net";
import {FakeSocket} from "fake-node-socket"


(async function () {
    // the payload
    const testData = Buffer.from([1, 3, 3, 7]);

    // To show typescript really believes they are Socket objects
    const sockets: Socket[] = FakeSocket.createPair();

    const [one, two] = sockets;

    const recved = await new Promise(resolve => {
        // hook on the data event of the first socket
        one.on('data', data => resolve(data));

        // write data over the second socket
        two.write(testData);
    });

    console.log(recved === testData); // true, its even the same Buffer object
})();

esm - commonjs

Since this package is so small it supports both esm and commonjs

Package Sidebar

Install

npm i fake-node-socket

Weekly Downloads

6

Version

1.0.1

License

MIT

Unpacked Size

17.3 kB

Total Files

13

Last publish

Collaborators

  • jaenster