From 38968c7dd6aa70312f68c2d6adce502ee8ec9d53 Mon Sep 17 00:00:00 2001 From: Sam Rawlins Date: Sat, 16 May 2020 00:58:36 -0700 Subject: [PATCH] Fix false positives for objects in declaration-block-trailing-semicolon (#4749) --- .../__tests__/index.js | 25 +++++++++++++++++++ .../index.js | 4 +++ 2 files changed, 29 insertions(+) diff --git a/lib/rules/declaration-block-trailing-semicolon/__tests__/index.js b/lib/rules/declaration-block-trailing-semicolon/__tests__/index.js index 84002da2a0..e5d47a9566 100644 --- a/lib/rules/declaration-block-trailing-semicolon/__tests__/index.js +++ b/lib/rules/declaration-block-trailing-semicolon/__tests__/index.js @@ -171,3 +171,28 @@ testRule({ }, ], }); + +testRule({ + ruleName, + config: ['always'], + syntax: 'css-in-js', + fix: true, + + accept: [ + { + code: 'const C = () => { return }', + description: 'css-in-js object', + }, + ], + + reject: [ + { + code: 'const C = styled.a`color: red`;', + fixed: 'const C = styled.a`color: red;`;', + description: 'css-in-js template literal', + message: messages.expected, + line: 1, + column: 29, + }, + ], +}); diff --git a/lib/rules/declaration-block-trailing-semicolon/index.js b/lib/rules/declaration-block-trailing-semicolon/index.js index 32e5b0b80d..509295dc31 100644 --- a/lib/rules/declaration-block-trailing-semicolon/index.js +++ b/lib/rules/declaration-block-trailing-semicolon/index.js @@ -42,6 +42,10 @@ function rule(expectation, _, context) { }); root.walkDecls((decl) => { + if (decl.parent.type === 'object') { + return; + } + if (decl !== decl.parent.last) { return; }