diff --git a/src/events.js b/src/events.js index 567e14c..3380792 100644 --- a/src/events.js +++ b/src/events.js @@ -44,6 +44,10 @@ export function getCaseParties(casenumber, options) { options ); + if (!(emitter.listenerCount(`retrieve-parties`))) { + logger.warn(`No listener is attached to emitter.retrieve-parties. Did you remember to include a data source?`); + } + // emit runs synchronously because I/O is not involved, so result will always be populated // before further functions are called. emitter.emit(`retrieve-parties`, casenumber, result); diff --git a/test/events.test.js b/test/events.test.js index d8f75c2..fbe85f0 100644 --- a/test/events.test.js +++ b/test/events.test.js @@ -259,6 +259,13 @@ describe(`events`, () => { }); describe(`log4js`, () => { + it(`should send something to log4js if no handlers are attached to retrieve-parties`, () => { + return testee.getCaseParties(dummyCase).then(() => { + let logged = traceStub.called || debugStub.called || infoStub.called || logStub.called || warnStub.called || errorStub.called || fatalStub.called; + expect(logged).to.equal(true); + }); + }); + it(`should send something to log4js when handling a rejected promise`, () => { emitter.on(`retrieve-parties`, (casenumber, result) => { result.promises.push(Promise.reject(`failed`));