fix subscribeToEvents test (#4166)

* try to fix freaking test

* fix subscribeToEvents test

This fix is a workaround. I would have used sinon fake timers, but I
couldn't get them to work.

* subscribeToEvent test: simplify code
This commit is contained in:
Jannis Redmann 2017-01-16 10:48:20 +01:00 committed by Gav Wood
parent aee70c4f16
commit 1d618faaa6

View File

@ -95,21 +95,20 @@ describe('util/subscribe-to-events', () => {
expect(api.eth.uninstallFilter.firstCall.args).to.eql([ 123 ]); expect(api.eth.uninstallFilter.firstCall.args).to.eql([ 123 ]);
}); });
it.skip('checks for new events regularly', async function () { it('checks for new events regularly', async function () {
const { api, contract } = this; const { api, contract } = this;
api.eth.getFilterLogs = stub().resolves([]); api.eth.getFilterLogs = stub().resolves([]);
const onLog = spy(); const onLog = spy();
const onBar = spy(); const onBar = spy();
const s = subscribeToEvents(contract, [ 'Bar' ], { interval: 5 }) subscribeToEvents(contract, [ 'Bar' ], { interval: 5 })
.on('log', onLog) .on('log', onLog)
.on('Bar', onBar); .on('Bar', onBar);
await delay(9); await delay(10);
s.unsubscribe();
expect(onLog.callCount).to.equal(1); expect(onLog.callCount).to.be.at.least(1);
expect(onLog.firstCall.args).to.eql([ liveLogs[0] ]); expect(onLog.firstCall.args).to.eql([ liveLogs[0] ]);
expect(onBar.callCount).to.equal(1); expect(onBar.callCount).to.be.at.least(1);
expect(onBar.firstCall.args).to.eql([ liveLogs[0] ]); expect(onBar.firstCall.args).to.eql([ liveLogs[0] ]);
}); });
}); });