@@ -24,14 +24,20 @@ eslintTester.addRuleTest('lib/rules/react-in-jsx-scope', {
24
24
{ code : 'var React; <x-gif />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { jsx : true } } ,
25
25
{ code : 'var React, App, a=1; <App attr={a} />;' , ecmaFeatures : { jsx : true } } ,
26
26
{ code : 'var React, App, a=1; function elem() { return <App attr={a} />; }' , ecmaFeatures : { jsx : true } } ,
27
- { code : 'var React, App; <App />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { globalReturn : true , jsx : true } }
27
+ { code : 'var React, App; <App />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { globalReturn : true , jsx : true } } ,
28
+ { code : '/** @jsx Foo */ var Foo, App; <App />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { jsx : true } } ,
29
+ { code : '/** @jsx Foo.Bar */ var Foo, App; <App />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { jsx : true } }
28
30
] ,
29
31
invalid : [
30
32
{ code : 'var App, a = <App />;' ,
31
33
errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
32
34
{ code : 'var a = <App />;' ,
33
35
errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
34
36
{ code : 'var a = <img />;' ,
35
- errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } }
37
+ errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
38
+ { code : '/** @jsx React.DOM */ var a = <img />;' ,
39
+ errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
40
+ { code : '/** @jsx Foo.bar */ var React, a = <img />;' ,
41
+ errors : [ { message : '\'Foo\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } }
36
42
]
37
43
} ) ;
0 commit comments