diff --git a/rules/prefer-string-trim-start-end.js b/rules/prefer-string-trim-start-end.js index 12f25bbc1f..c1fa98153b 100644 --- a/rules/prefer-string-trim-start-end.js +++ b/rules/prefer-string-trim-start-end.js @@ -10,6 +10,7 @@ const selector = [ methodCallSelector({ methods: ['trimLeft', 'trimRight'], argumentsLength: 0, + includeOptionalMember: true, }), ' > .callee', ' > .property', diff --git a/test/prefer-string-trim-start-end.mjs b/test/prefer-string-trim-start-end.mjs index 8e2645d046..6972ba0776 100644 --- a/test/prefer-string-trim-start-end.mjs +++ b/test/prefer-string-trim-start-end.mjs @@ -6,6 +6,7 @@ const {test} = getTester(import.meta); test.snapshot({ valid: [ 'foo.trimStart()', + 'foo.trimStart?.()', 'foo.trimEnd()', // Not `CallExpression` 'new foo.trimLeft();', @@ -40,6 +41,6 @@ test.snapshot({ /* comment */ ) `, - 'foo.trimLeft()', + 'foo?.trimLeft()', ], }); diff --git a/test/snapshots/prefer-string-trim-start-end.mjs.md b/test/snapshots/prefer-string-trim-start-end.mjs.md index 396b42c08e..bd43386849 100644 --- a/test/snapshots/prefer-string-trim-start-end.mjs.md +++ b/test/snapshots/prefer-string-trim-start-end.mjs.md @@ -113,17 +113,17 @@ Generated by [AVA](https://avajs.dev). ` ## Invalid #7 - 1 | foo.trimLeft() + 1 | foo?.trimLeft() > Output `␊ - 1 | foo.trimStart()␊ + 1 | foo?.trimStart()␊ ` > Error 1/1 `␊ - > 1 | foo.trimLeft()␊ - | ^^^^^^^^ Prefer \`String#trimStart()\` over \`String#trimLeft()\`.␊ + > 1 | foo?.trimLeft()␊ + | ^^^^^^^^ Prefer \`String#trimStart()\` over \`String#trimLeft()\`.␊ ` diff --git a/test/snapshots/prefer-string-trim-start-end.mjs.snap b/test/snapshots/prefer-string-trim-start-end.mjs.snap index 9465717072..994475dec3 100644 Binary files a/test/snapshots/prefer-string-trim-start-end.mjs.snap and b/test/snapshots/prefer-string-trim-start-end.mjs.snap differ