javascript - How to provide chai expect with custom error message for mocha unit test? -
i have mocha test using chai's expect:
it("should parse sails out of cache file", async () => { const sailextractor = new extractor(); const result = await sailextractor.extract("test.xml"); try { expect(result.length).to.be.greaterthan(0); const withmandatoryflight = result.filter((cruises) => { return cruises.hasmandatoryflight === true; }); expect(withmandatoryflight.length).to.be.greaterthan(0); const cruiseonly = result.filter((cruises) => { return cruises.hasmandatoryflight === false; }); expect(cruiseonly.length).to.be.greaterthan(0); return promise.resolve(); } catch (e) { return promise.reject(e); } }
now if 1 to.be.greaterthan(0)
expectation fails, error output on mocha not dev-friendly:
assertionerror: expected 0 above 0 @ assertion.assertabove (node_modules/chai/lib/chai/core/assertions.js:571:12) @ assertion.ctx.(anonymous function) [as greaterthan] (node_modules/chai/lib/chai/utils/addmethod.js:41:25) @ _callee2$ (tests/unit/operator/croisieurope/croisxmlextractortest.js:409:61) @ trycatch (node_modules/regenerator-runtime/runtime.js:65:40) @ generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:303:22) @ generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:117:21) @ fulfilled (node_modules/tslib/tslib.js:93:62) @ <anonymous> @ process._tickdomaincallback (internal/process/next_tick.js:228:7)
i replace more human-friendly. there way tell chai use customize error message?
i want able use pseudo-code:
expect(result.length) .to.be.greaterthan(0) .witherrormessage("it should parse @ least 1 sail out of flatfile, result empty");
and failing mocha error should print:
assertionerror: should parse @ least 1 sail out of flatfile, result empty
every expect
method accepts optional parameter message
:
expect(1).to.be.above(2, 'nooo why fail??'); expect(1, 'nooo why fail??').to.be.above(2);
so, in case should be:
expect(result.length) .to.be.greaterthan(0, "it should parse @ least 1 sail out of flatfile, result empty");
Comments
Post a Comment