Skip to content

Commit 75a0ff2

Browse files
authoredAug 9, 2022
fix(max-expects): don't count expect.<member>() calls towards max (#1194)
1 parent 4106b8f commit 75a0ff2

File tree

2 files changed

+43
-2
lines changed

2 files changed

+43
-2
lines changed
 

‎src/rules/__tests__/max-expects.test.ts

+31
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,37 @@ ruleTester.run('max-expects', rule, {
5757
expect(true).toBeDefined();
5858
});
5959
`,
60+
dedent`
61+
test('should pass', async () => {
62+
expect.hasAssertions();
63+
64+
expect(true).toBeDefined();
65+
expect(true).toBeDefined();
66+
expect(true).toBeDefined();
67+
expect(true).toBeDefined();
68+
expect(true).toBeDefined();
69+
});
70+
`,
71+
dedent`
72+
test('should pass', async () => {
73+
expect(true).toBeDefined();
74+
expect(true).toBeDefined();
75+
expect(true).toBeDefined();
76+
expect(true).toBeDefined();
77+
expect(true).toEqual(expect.any(Boolean));
78+
});
79+
`,
80+
dedent`
81+
test('should pass', async () => {
82+
expect.hasAssertions();
83+
84+
expect(true).toBeDefined();
85+
expect(true).toBeDefined();
86+
expect(true).toBeDefined();
87+
expect(true).toBeDefined();
88+
expect(true).toEqual(expect.any(Boolean));
89+
});
90+
`,
6091
dedent`
6192
describe('test', () => {
6293
test('should pass', () => {

‎src/rules/max-expects.ts

+12-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
import { AST_NODE_TYPES } from '@typescript-eslint/utils';
2-
import { FunctionExpression, createRule, isTypeOfJestFnCall } from './utils';
2+
import {
3+
FunctionExpression,
4+
createRule,
5+
isTypeOfJestFnCall,
6+
parseJestFnCall,
7+
} from './utils';
38

49
export default createRule({
510
name: __filename,
@@ -45,7 +50,12 @@ export default createRule({
4550
FunctionExpression: onFunctionExpressionEnter,
4651
ArrowFunctionExpression: onFunctionExpressionEnter,
4752
CallExpression(node) {
48-
if (!isTypeOfJestFnCall(node, context, ['expect'])) {
53+
const jestFnCall = parseJestFnCall(node, context);
54+
55+
if (
56+
jestFnCall?.type !== 'expect' ||
57+
jestFnCall.head.node.parent?.type === AST_NODE_TYPES.MemberExpression
58+
) {
4959
return;
5060
}
5161

0 commit comments

Comments
 (0)