@@ -24,14 +24,20 @@ eslintTester.addRuleTest('lib/rules/react-in-jsx-scope', {
2424 { code : 'var React; <x-gif />;' , args : [ 1 , { vars : 'all' } ] , ecmaFeatures : { jsx : true } } ,
2525 { code : 'var React, App, a=1; <App attr={a} />;' , ecmaFeatures : { jsx : true } } ,
2626 { 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 } }
2830 ] ,
2931 invalid : [
3032 { code : 'var App, a = <App />;' ,
3133 errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
3234 { code : 'var a = <App />;' ,
3335 errors : [ { message : '\'React\' must be in scope when using JSX' } ] , ecmaFeatures : { jsx : true } } ,
3436 { 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 } }
3642 ]
3743} ) ;
0 commit comments