@@ -13,6 +13,8 @@ var eslint = require('eslint').linter;
1313var ruleNoUnusedVars = require ( 'eslint/lib/rules/no-unused-vars' ) ;
1414var rulePreferConst = require ( 'eslint/lib/rules/prefer-const' ) ;
1515var RuleTester = require ( 'eslint' ) . RuleTester ;
16+ var dot = require ( '../../eslint-compat' ) . dot ;
17+ var isEslint2 = require ( '../../eslint-compat' ) . isEslint2 ;
1618
1719var parserOptions = {
1820 ecmaVersion : 6 ,
@@ -123,37 +125,37 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
123125 invalid : [
124126 {
125127 code : '/*eslint jsx-uses-vars:1*/ var App;' ,
126- errors : [ { message : '\'App\' is defined but never used.' } ] ,
128+ errors : [ { message : dot ( '\'App\' is defined but never used' ) } ] ,
127129 parserOptions : parserOptions
128130 } , {
129131 code : '\
130132 /*eslint jsx-uses-vars:1*/\
131133 var App;\
132134 var unused;\
133135 React.render(<App unused=""/>);' ,
134- errors : [ { message : '\'unused\' is defined but never used.' } ] ,
136+ errors : [ { message : dot ( '\'unused\' is defined but never used' ) } ] ,
135137 parserOptions : parserOptions
136138 } , {
137139 code : '\
138140 /*eslint jsx-uses-vars:1*/\
139141 var App;\
140142 var Hello;\
141143 React.render(<App:Hello/>);' ,
142- errors : [ { message : '\'Hello\' is defined but never used.' } ] ,
144+ errors : [ { message : dot ( '\'Hello\' is defined but never used' ) } ] ,
143145 parserOptions : parserOptions
144146 } , {
145147 code : '\
146148 /*eslint jsx-uses-vars:1*/\
147149 var Button;\
148150 var Input;\
149151 React.render(<Button.Input unused=""/>);' ,
150- errors : [ { message : '\'Input\' is defined but never used.' } ] ,
152+ errors : [ { message : dot ( '\'Input\' is defined but never used' ) } ] ,
151153 parserOptions : parserOptions
152154 } , {
153155 code : '\
154156 /*eslint jsx-uses-vars:1*/\
155157 class unused {}' ,
156- errors : [ { message : '\'unused\' is defined but never used.' } ] ,
158+ errors : [ { message : dot ( '\'unused\' is defined but never used' ) } ] ,
157159 parserOptions : parserOptions
158160 } , {
159161 code : '\
@@ -165,7 +167,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
165167 }\
166168 }' ,
167169 errors : [ {
168- message : '\'HelloMessage\' is defined but never used.' ,
170+ message : dot ( '\'HelloMessage\' is defined but never used' ) ,
169171 line : 1
170172 } ] ,
171173 parserOptions : parserOptions
@@ -179,7 +181,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
179181 }\
180182 }' ,
181183 errors : [ {
182- message : '\'HelloMessage\' is defined but never used.' ,
184+ message : dot ( '\'HelloMessage\' is defined but never used' ) ,
183185 line : 1
184186 } ] ,
185187 parser : 'babel-eslint' ,
@@ -194,7 +196,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
194196 }\
195197 Greetings();' ,
196198 errors : [ {
197- message : '\'Hello\' is defined but never used.' ,
199+ message : dot ( '\'Hello\' is defined but never used' ) ,
198200 line : 1
199201 } ] ,
200202 parser : 'babel-eslint' ,
@@ -206,21 +208,21 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
206208// Check compatibility with eslint prefer-const rule (#716)
207209ruleTester . run ( 'prefer-const' , rulePreferConst , {
208210 valid : [ ] ,
209- invalid : [ {
211+ invalid : ( isEslint2 ( ) ? [ ] : [ {
210212 code : [
211213 '/* eslint jsx-uses-vars:1 */' ,
212214 'let App = <div />;' ,
213215 '<App />;'
214216 ] . join ( '\n' ) ,
215- errors : [ { message : '\'App\' is never reassigned. Use \'const\' instead.' } ] ,
217+ errors : [ { message : dot ( '\'App\' is never reassigned. Use \'const\' instead' ) } ] ,
216218 parserOptions : parserOptions
217- } , {
219+ } ] ) . concat ( [ {
218220 code : [
219221 '/* eslint jsx-uses-vars:1 */' ,
220222 'let filters = \'foo\';' ,
221223 '<div>{filters}</div>;'
222224 ] . join ( '\n' ) ,
223- errors : [ { message : '\'filters\' is never reassigned. Use \'const\' instead.' } ] ,
225+ errors : [ { message : '\'filters\' is never reassigned' + ( isEslint2 ( ) ? ', use' : ' . Use' ) + ' \'const\' instead.'} ] ,
224226 parserOptions : parserOptions
225- } ]
227+ } ] )
226228} ) ;
0 commit comments