diff --git a/tests/lib/rules/jsx-no-leaked-zero.js b/tests/lib/rules/jsx-no-leaked-zero.js index ca94a7fd78..8e8ad3866e 100644 --- a/tests/lib/rules/jsx-no-leaked-zero.js +++ b/tests/lib/rules/jsx-no-leaked-zero.js @@ -31,65 +31,65 @@ ruleTester.run('jsx-no-leaked-zero', rule, { valid: parsers.all([ { code: ` - const Component = () => { - return
{customTitle || defaultTitle}
- } + const Component = () => { + return
{customTitle || defaultTitle}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements}
- } + const Component = ({ elements }) => { + return
{elements}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
There are {elements.length} elements
- } + const Component = ({ elements }) => { + return
There are {elements.length} elements
+ } `, }, { code: ` - const Component = ({ elements, count }) => { - return
{!count && 'No results found'}
- } + const Component = ({ elements, count }) => { + return
{!count && 'No results found'}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{!!elements.length && }
- } + const Component = ({ elements }) => { + return
{!!elements.length && }
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{Boolean(elements.length) && }
- } + const Component = ({ elements }) => { + return
{Boolean(elements.length) && }
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements.length > 0 && }
- } + const Component = ({ elements }) => { + return
{elements.length > 0 && }
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements.length ? : null}
- } + const Component = ({ elements }) => { + return
{elements.length ? : null}
+ } `, }, { code: ` - const Component = ({ elements, count }) => { - return
{count ? : null}
- } + const Component = ({ elements, count }) => { + return
{count ? : null}
+ } `, }, ]), @@ -98,215 +98,215 @@ ruleTester.run('jsx-no-leaked-zero', rule, { // Invalid tests with cast to boolean fix strategy { code: ` - const Component = ({ count, title }) => { - return
{count && title}
- } + const Component = ({ count, title }) => { + return
{count && title}
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ count, title }) => { - return
{!!count && title}
- } + const Component = ({ count, title }) => { + return
{!!count && title}
+ } `, }, { code: ` - const Component = ({ count }) => { - return
{count && There are {count} results}
- } + const Component = ({ count }) => { + return
{count && There are {count} results}
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ count }) => { - return
{!!count && There are {count} results}
- } + const Component = ({ count }) => { + return
{!!count && There are {count} results}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements.length && }
- } + const Component = ({ elements }) => { + return
{elements.length && }
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ elements }) => { - return
{!!elements.length && }
- } + const Component = ({ elements }) => { + return
{!!elements.length && }
+ } `, }, { code: ` - const Component = ({ nestedCollection }) => { - return
{nestedCollection.elements.length && }
- } + const Component = ({ nestedCollection }) => { + return
{nestedCollection.elements.length && }
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ nestedCollection }) => { - return
{!!nestedCollection.elements.length && }
- } + const Component = ({ nestedCollection }) => { + return
{!!nestedCollection.elements.length && }
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements[0] && }
- } + const Component = ({ elements }) => { + return
{elements[0] && }
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ elements }) => { - return
{!!elements[0] && }
- } + const Component = ({ elements }) => { + return
{!!elements[0] && }
+ } `, }, { code: ` - const Component = ({ numberA, numberB }) => { - return
{(numberA || numberB) && {numberA+numberB}}
- } + const Component = ({ numberA, numberB }) => { + return
{(numberA || numberB) && {numberA+numberB}}
+ } `, options: [{ fixStrategy: 'cast' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 23, + column: 25, }], output: ` - const Component = ({ numberA, numberB }) => { - return
{!!(numberA || numberB) && {numberA+numberB}}
- } + const Component = ({ numberA, numberB }) => { + return
{!!(numberA || numberB) && {numberA+numberB}}
+ } `, }, // Invalid tests with ternary fix strategy { code: ` - const Component = ({ count, title }) => { - return
{count && title}
- } + const Component = ({ count, title }) => { + return
{count && title}
+ } `, errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ count, title }) => { - return
{count ? title : null}
- } + const Component = ({ count, title }) => { + return
{count ? title : null}
+ } `, }, { code: ` - const Component = ({ count }) => { - return
{count && There are {count} results}
- } + const Component = ({ count }) => { + return
{count && There are {count} results}
+ } `, errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ count }) => { - return
{count ? There are {count} results : null}
- } + const Component = ({ count }) => { + return
{count ? There are {count} results : null}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements.length && }
- } + const Component = ({ elements }) => { + return
{elements.length && }
+ } `, errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ elements }) => { - return
{elements.length ? : null}
- } + const Component = ({ elements }) => { + return
{elements.length ? : null}
+ } `, }, { code: ` - const Component = ({ nestedCollection }) => { - return
{nestedCollection.elements.length && }
- } + const Component = ({ nestedCollection }) => { + return
{nestedCollection.elements.length && }
+ } `, errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ nestedCollection }) => { - return
{nestedCollection.elements.length ? : null}
- } + const Component = ({ nestedCollection }) => { + return
{nestedCollection.elements.length ? : null}
+ } `, }, { code: ` - const Component = ({ elements }) => { - return
{elements[0] && }
- } + const Component = ({ elements }) => { + return
{elements[0] && }
+ } `, errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 22, + column: 24, }], output: ` - const Component = ({ elements }) => { - return
{elements[0] ? : null}
- } + const Component = ({ elements }) => { + return
{elements[0] ? : null}
+ } `, }, { code: ` - const Component = ({ numberA, numberB }) => { - return
{(numberA || numberB) && {numberA+numberB}}
- } + const Component = ({ numberA, numberB }) => { + return
{(numberA || numberB) && {numberA+numberB}}
+ } `, options: [{ fixStrategy: 'ternary' }], errors: [{ message: 'Potential numeric evaluation resulting in an unintentionally rendered `0`', line: 3, - column: 23, + column: 25, }], output: ` - const Component = ({ numberA, numberB }) => { - return
{(numberA || numberB) ? {numberA+numberB} : null}
- } + const Component = ({ numberA, numberB }) => { + return
{(numberA || numberB) ? {numberA+numberB} : null}
+ } `, }, ]),