eslint-plugin-mocha
Version:
Eslint rules for mocha.
30 lines • 1.06 kB
JavaScript
import { createMochaVisitors } from "../ast/mocha-visitors.js";
function isTopLevelScope(scope) {
return scope.type === 'global' || scope.type === 'module';
}
export const noTopLevelTestsRule = {
meta: {
type: 'suggestion',
docs: {
description: 'Disallow top-level tests',
recommended: true,
url: 'https://github.com/lo1tuma/eslint-plugin-mocha/blob/main/documentation/rules/no-top-level-tests.md'
},
schema: [],
messages: {
unexpectedTopLevelTest: 'Unexpected top-level mocha test.'
},
languages: ['js/js']
},
create(context) {
return createMochaVisitors(context, {
testCase(visitorContext) {
const scope = context.sourceCode.getScope(visitorContext.node);
if (isTopLevelScope(scope)) {
context.report({ node: visitorContext.node, messageId: 'unexpectedTopLevelTest' });
}
}
});
}
};
//# sourceMappingURL=no-top-level-tests.js.map