Skip to content

Commit 0702c9a

Browse files
committed
[Fix] jsx-boolean-value: assumeUndefinedIsFalse with never must not allow explicit true value
1 parent d97e3ed commit 0702c9a

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

lib/rules/jsx-boolean-value.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,6 @@ module.exports = {
132132
}
133133
if (
134134
isNever(configuration, exceptions, propName)
135-
&& !configObject.assumeUndefinedIsFalse
136135
&& value
137136
&& value.type === 'JSXExpressionContainer'
138137
&& value.expression.value === true

tests/lib/rules/jsx-boolean-value.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ ruleTester.run('jsx-boolean-value', rule, {
5252
code: '<App />;',
5353
options: ['never', { assumeUndefinedIsFalse: true }],
5454
},
55+
{
56+
code: '<App foo={false} />;',
57+
options: ['never', { assumeUndefinedIsFalse: false }],
58+
},
5559
{
5660
code: '<App foo={false} />;',
5761
options: ['never', { assumeUndefinedIsFalse: true, always: ['foo'] }],
@@ -145,6 +149,21 @@ ruleTester.run('jsx-boolean-value', rule, {
145149
},
146150
],
147151
},
152+
{
153+
code: '<App foo={true} bak={false} />;',
154+
output: '<App foo />;',
155+
options: ['never', { assumeUndefinedIsFalse: true }],
156+
errors: [
157+
{
158+
messageId: 'omitBoolean',
159+
data: { propName: 'foo' },
160+
},
161+
{
162+
messageId: 'omitPropAndBoolean',
163+
data: { propName: 'bak' },
164+
},
165+
],
166+
},
148167
{
149168
code: '<App foo={true} bar={false} baz={false} bak={false} />;',
150169
output: '<App foo={true} bar={false} />;',

0 commit comments

Comments
 (0)