@@ -13,6 +13,8 @@ var eslint = require('eslint').linter;
13
13
var ruleNoUnusedVars = require ( 'eslint/lib/rules/no-unused-vars' ) ;
14
14
var rulePreferConst = require ( 'eslint/lib/rules/prefer-const' ) ;
15
15
var RuleTester = require ( 'eslint' ) . RuleTester ;
16
+ var dot = require ( '../../eslint-compat' ) . dot ;
17
+ var isEslint2 = require ( '../../eslint-compat' ) . isEslint2 ;
16
18
17
19
var parserOptions = {
18
20
ecmaVersion : 6 ,
@@ -123,37 +125,37 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
123
125
invalid : [
124
126
{
125
127
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' ) } ] ,
127
129
parserOptions : parserOptions
128
130
} , {
129
131
code : '\
130
132
/*eslint jsx-uses-vars:1*/\
131
133
var App;\
132
134
var unused;\
133
135
React.render(<App unused=""/>);' ,
134
- errors : [ { message : '\'unused\' is defined but never used.' } ] ,
136
+ errors : [ { message : dot ( '\'unused\' is defined but never used' ) } ] ,
135
137
parserOptions : parserOptions
136
138
} , {
137
139
code : '\
138
140
/*eslint jsx-uses-vars:1*/\
139
141
var App;\
140
142
var Hello;\
141
143
React.render(<App:Hello/>);' ,
142
- errors : [ { message : '\'Hello\' is defined but never used.' } ] ,
144
+ errors : [ { message : dot ( '\'Hello\' is defined but never used' ) } ] ,
143
145
parserOptions : parserOptions
144
146
} , {
145
147
code : '\
146
148
/*eslint jsx-uses-vars:1*/\
147
149
var Button;\
148
150
var Input;\
149
151
React.render(<Button.Input unused=""/>);' ,
150
- errors : [ { message : '\'Input\' is defined but never used.' } ] ,
152
+ errors : [ { message : dot ( '\'Input\' is defined but never used' ) } ] ,
151
153
parserOptions : parserOptions
152
154
} , {
153
155
code : '\
154
156
/*eslint jsx-uses-vars:1*/\
155
157
class unused {}' ,
156
- errors : [ { message : '\'unused\' is defined but never used.' } ] ,
158
+ errors : [ { message : dot ( '\'unused\' is defined but never used' ) } ] ,
157
159
parserOptions : parserOptions
158
160
} , {
159
161
code : '\
@@ -165,7 +167,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
165
167
}\
166
168
}' ,
167
169
errors : [ {
168
- message : '\'HelloMessage\' is defined but never used.' ,
170
+ message : dot ( '\'HelloMessage\' is defined but never used' ) ,
169
171
line : 1
170
172
} ] ,
171
173
parserOptions : parserOptions
@@ -179,7 +181,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
179
181
}\
180
182
}' ,
181
183
errors : [ {
182
- message : '\'HelloMessage\' is defined but never used.' ,
184
+ message : dot ( '\'HelloMessage\' is defined but never used' ) ,
183
185
line : 1
184
186
} ] ,
185
187
parser : 'babel-eslint' ,
@@ -194,7 +196,7 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
194
196
}\
195
197
Greetings();' ,
196
198
errors : [ {
197
- message : '\'Hello\' is defined but never used.' ,
199
+ message : dot ( '\'Hello\' is defined but never used' ) ,
198
200
line : 1
199
201
} ] ,
200
202
parser : 'babel-eslint' ,
@@ -206,21 +208,21 @@ ruleTester.run('no-unused-vars', ruleNoUnusedVars, {
206
208
// Check compatibility with eslint prefer-const rule (#716)
207
209
ruleTester . run ( 'prefer-const' , rulePreferConst , {
208
210
valid : [ ] ,
209
- invalid : [ {
211
+ invalid : ( isEslint2 ( ) ? [ ] : [ {
210
212
code : [
211
213
'/* eslint jsx-uses-vars:1 */' ,
212
214
'let App = <div />;' ,
213
215
'<App />;'
214
216
] . join ( '\n' ) ,
215
- errors : [ { message : '\'App\' is never reassigned. Use \'const\' instead.' } ] ,
217
+ errors : [ { message : dot ( '\'App\' is never reassigned. Use \'const\' instead' ) } ] ,
216
218
parserOptions : parserOptions
217
- } , {
219
+ } ] ) . concat ( [ {
218
220
code : [
219
221
'/* eslint jsx-uses-vars:1 */' ,
220
222
'let filters = \'foo\';' ,
221
223
'<div>{filters}</div>;'
222
224
] . join ( '\n' ) ,
223
- errors : [ { message : '\'filters\' is never reassigned. Use \'const\' instead.' } ] ,
225
+ errors : [ { message : '\'filters\' is never reassigned' + ( isEslint2 ( ) ? ', use' : ' . Use' ) + ' \'const\' instead.'} ] ,
224
226
parserOptions : parserOptions
225
- } ]
227
+ } ] )
226
228
} ) ;
0 commit comments