From 7730f757561100559509b756fd362ca33b9ab1d4 Mon Sep 17 00:00:00 2001 From: Gareth Jones Date: Sun, 23 Feb 2020 17:00:46 +1300 Subject: [PATCH] fix(valid-title): ensure argument node is defined before accessing props (#538) --- src/rules/__tests__/valid-title.test.ts | 1 + src/rules/valid-title.ts | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/rules/__tests__/valid-title.test.ts b/src/rules/__tests__/valid-title.test.ts index 3584b4909..73f44ea0a 100644 --- a/src/rules/__tests__/valid-title.test.ts +++ b/src/rules/__tests__/valid-title.test.ts @@ -271,6 +271,7 @@ ruleTester.run('no-empty-title', rule, { 'test(`${foo}`, function () {})', 'test.concurrent(`${foo}`, function () {})', "it('foo', function () {})", + 'it.each([])()', "it.concurrent('foo', function () {})", "xdescribe('foo', function () {})", "xit('foo', function () {})", diff --git a/src/rules/valid-title.ts b/src/rules/valid-title.ts index 43e7ffd21..bec7f888c 100644 --- a/src/rules/valid-title.ts +++ b/src/rules/valid-title.ts @@ -81,12 +81,16 @@ export default createRule({ return { CallExpression(node: TSESTree.CallExpression) { - if (!(isDescribe(node) || isTestCase(node)) || !node.arguments.length) { + if (!isDescribe(node) && !isTestCase(node)) { return; } const [argument] = getJestFunctionArguments(node); + if (!argument) { + return; + } + if (!isStringNode(argument)) { if ( argument.type === AST_NODE_TYPES.BinaryExpression &&