46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
import * as chai from 'chai';
|
|
import * as dirtyChai from 'dirty-chai';
|
|
import * as _ from 'lodash';
|
|
import 'mocha';
|
|
|
|
import { orderbookChannelFactory } from '../src/orderbook_channel_factory';
|
|
|
|
chai.config.includeStack = true;
|
|
chai.use(dirtyChai);
|
|
const expect = chai.expect;
|
|
const emptyOrderbookChannelHandler = {
|
|
onSnapshot: () => {
|
|
_.noop();
|
|
},
|
|
onUpdate: () => {
|
|
_.noop();
|
|
},
|
|
onError: () => {
|
|
_.noop();
|
|
},
|
|
onClose: () => {
|
|
_.noop();
|
|
},
|
|
};
|
|
|
|
describe('orderbookChannelFactory', () => {
|
|
const websocketUrl = 'ws://localhost:8080';
|
|
describe('#createWebSocketOrderbookChannelAsync', () => {
|
|
it('throws when input is not a url', () => {
|
|
const badUrlInput = 54;
|
|
expect(
|
|
orderbookChannelFactory.createWebSocketOrderbookChannelAsync(
|
|
badUrlInput as any,
|
|
emptyOrderbookChannelHandler,
|
|
),
|
|
).to.be.rejected();
|
|
});
|
|
it('throws when handler has the incorrect members', () => {
|
|
const badHandlerInput = {};
|
|
expect(
|
|
orderbookChannelFactory.createWebSocketOrderbookChannelAsync(websocketUrl, badHandlerInput as any),
|
|
).to.be.rejected();
|
|
});
|
|
});
|
|
});
|