UNPKG

eslint-plugin-jest-extended

Version:
41 lines (40 loc) 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _utils = require("@typescript-eslint/utils"); var _utils2 = require("./utils"); const isFalseLiteral = node => node.type === _utils.AST_NODE_TYPES.Literal && node.value === false; var _default = exports.default = (0, _utils2.createRule)({ name: __filename, meta: { docs: { description: 'Suggest using `toBeFalse()`' }, messages: { preferToBeFalse: 'Prefer using `toBeFalse()` to test value is `false`.' }, fixable: 'code', type: 'suggestion', schema: [] }, defaultOptions: [], create(context) { return { CallExpression(node) { const jestFnCall = (0, _utils2.parseJestFnCall)(node, context); if (jestFnCall?.type !== 'expect') { return; } if (jestFnCall.args.length === 1 && isFalseLiteral((0, _utils2.getFirstMatcherArg)(jestFnCall)) && _utils2.EqualityMatcher.hasOwnProperty((0, _utils2.getAccessorValue)(jestFnCall.matcher))) { context.report({ node: jestFnCall.matcher, messageId: 'preferToBeFalse', fix: fixer => [fixer.replaceText(jestFnCall.matcher, 'toBeFalse'), fixer.remove(jestFnCall.args[0])] }); } } }; } });