Files
api/packages/api-provider/test/mockWs.js
T
Jaco Greeff e8ccc9aa79 Move to lerna repo (#19)
* Pull api-* packages into lerna repo

* Bootstrap with hoist

* Update jest alias config

* Add api-jsonrpc

* Pull in jsonrpc

* Update badges

* Don't hoist, use workspaces

* .eslintrc to root

* Cleanups, build from root

* Shorthand commands

* Update to @polkadot/dev 0.9.1

* Update description
2017-11-28 18:03:48 +01:00

51 lines
915 B
JavaScript

// ISC, Copyright 2017 Jaco Greeff
const { Server } = require('mock-socket');
const TEST_WS_URL = 'ws://localhost:9955';
let server;
function mockWs (requests) {
server = new Server(TEST_WS_URL);
let requestCount = 0;
server.on('message', (body) => {
const request = requests[requestCount];
const result = request.reply;
const response = request.error
? {
id: request.id,
jsonrpc: '2.0',
error: {
code: request.error.code,
message: request.error.message
}
}
: {
id: request.id,
jsonrpc: '2.0',
result: result.result
};
scope.body[request.method] = body;
requestCount++;
server.send(JSON.stringify(response));
});
const scope = {
body: {},
requests: 0,
server,
done: () => server.stop()
};
return scope;
}
module.exports = {
TEST_WS_URL,
mockWs
};