Skip to content

Commit cfbea9d

Browse files
committed
Make "NeedsMoreChidren" case fixable
1 parent 001488e commit cfbea9d

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

lib/rules/jsx-no-useless-fragment.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,8 @@ module.exports = {
141141
if (hasLessThanTwoChildren(node)) {
142142
context.report({
143143
node,
144-
messageId: 'NeedsMoreChidren'
144+
messageId: 'NeedsMoreChidren',
145+
fix: isSafeToFix(node) ? (fixer => fix(node, fixer)) : null
145146
});
146147
}
147148

tests/lib/rules/jsx-no-useless-fragment.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,16 +60,19 @@ ruleTester.run('jsx-no-uselses-fragment', rule, {
6060
invalid: [
6161
{
6262
code: '<></>',
63+
output: null,
6364
errors: [{messageId: 'NeedsMoreChidren', type: 'JSXFragment'}],
6465
parser: parsers.BABEL_ESLINT
6566
},
6667
{
6768
code: '<>foo</>',
69+
output: null,
6870
errors: [{messageId: 'NeedsMoreChidren'}],
6971
parser: parsers.BABEL_ESLINT
7072
},
7173
{
7274
code: '<><div/></>',
75+
output: null,
7376
errors: [{messageId: 'NeedsMoreChidren'}],
7477
parser: parsers.BABEL_ESLINT
7578
},
@@ -104,8 +107,15 @@ ruleTester.run('jsx-no-uselses-fragment', rule, {
104107
errors: [{messageId: 'NeedsMoreChidren'}],
105108
parser: parsers.BABEL_ESLINT
106109
},
110+
{
111+
code: '<Eeee><>foo</></Eeee>',
112+
output: '<Eeee>foo</Eeee>',
113+
errors: [{messageId: 'NeedsMoreChidren'}],
114+
parser: parsers.BABEL_ESLINT
115+
},
107116
{
108117
code: '<div><>foo</></div>',
118+
output: '<div>foo</div>',
109119
errors: [{messageId: 'NeedsMoreChidren'}, {messageId: 'ChildOfHtmlElement'}],
110120
parser: parsers.BABEL_ESLINT
111121
},

0 commit comments

Comments
 (0)