Skip to content

Commit b33ae84

Browse files
authored
Merge pull request #1098 from arian/createElement-display-test
Test false positive component detection for destructured createElement
2 parents 84be80a + 37e71bb commit b33ae84

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

tests/lib/rules/display-name.js

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,48 @@ ruleTester.run('display-name', rule, {
362362
module.exports = someDecorator;
363363
`,
364364
parser: 'babel-eslint'
365+
}, {
366+
code: [
367+
'import React, {createElement} from "react";',
368+
'const SomeComponent = (props) => {',
369+
' const {foo, bar} = props;',
370+
' return someComponentFactory({',
371+
' onClick: () => foo(bar("x"))',
372+
' });',
373+
'};'
374+
].join('\n')
375+
}, {
376+
code: [
377+
'import React, {createElement} from "react";',
378+
'const SomeComponent = (props) => {',
379+
' const {foo, bar} = props;',
380+
' return someComponentFactory({',
381+
' onClick: () => foo(bar("x"))',
382+
' });',
383+
'};'
384+
].join('\n'),
385+
parser: 'babel-eslint'
386+
}, {
387+
code: [
388+
'import React, {Component} from "react";',
389+
'function someDecorator(ComposedComponent) {',
390+
' return class MyDecorator extends Component {',
391+
' render() {return <ComposedComponent {...this.props} />;}',
392+
' };',
393+
'}',
394+
'module.exports = someDecorator;'
395+
].join('\n')
396+
}, {
397+
code: [
398+
'import React, {Component} from "react";',
399+
'function someDecorator(ComposedComponent) {',
400+
' return class MyDecorator extends Component {',
401+
' render() {return <ComposedComponent {...this.props} />;}',
402+
' };',
403+
'}',
404+
'module.exports = someDecorator;'
405+
].join('\n'),
406+
parser: 'babel-eslint'
365407
}, {
366408
code: `
367409
const element = (

0 commit comments

Comments
 (0)