25 lines
816 B
JavaScript
25 lines
816 B
JavaScript
|
const {describe, it} = require('mocha');
|
||
|
const {getCoverageResults} = require('./coverage-utils');
|
||
|
const expect = require('expect');
|
||
|
|
||
|
describe('API coverage test', () => {
|
||
|
it('calls every method', () => {
|
||
|
if (!process.env.COVERAGE) return;
|
||
|
|
||
|
const coverageMap = getCoverageResults();
|
||
|
const missingMethods = [];
|
||
|
for (const method of coverageMap.keys()) {
|
||
|
if (!coverageMap.get(method))
|
||
|
missingMethods.push(method);
|
||
|
}
|
||
|
if (missingMethods.length) {
|
||
|
console.error('\nCoverage check failed: not all API methods called. See above output for list of missing methods.');
|
||
|
console.error(missingMethods.join('\n'));
|
||
|
}
|
||
|
|
||
|
// We know this will fail because we checked above
|
||
|
// but we need the actual test to fail.
|
||
|
expect(missingMethods.length).toEqual(0);
|
||
|
});
|
||
|
});
|