@@ -19,7 +19,7 @@ describe("reportConversionResults", () => {
19
19
const conversionResults = createEmptyConversionResults ( {
20
20
converted : new Map < string , ESLintRuleOptions > ( [
21
21
[
22
- " tslint-rule-one" ,
22
+ ` tslint-rule-one` ,
23
23
{
24
24
ruleArguments : [ "a" , "b" ] ,
25
25
ruleName : "tslint-rule-one" ,
@@ -32,7 +32,11 @@ describe("reportConversionResults", () => {
32
32
const { choosePackageManager, logger } = createStubDependencies ( ) ;
33
33
34
34
// Act
35
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
35
+ await reportConversionResults (
36
+ { choosePackageManager, logger } ,
37
+ ".eslintrc.js" ,
38
+ conversionResults ,
39
+ ) ;
36
40
37
41
// Assert
38
42
expectEqualWrites (
@@ -49,7 +53,7 @@ describe("reportConversionResults", () => {
49
53
const conversionResults = createEmptyConversionResults ( {
50
54
converted : new Map < string , ESLintRuleOptions > ( [
51
55
[
52
- " tslint-rule-one" ,
56
+ ` tslint-rule-one` ,
53
57
{
54
58
notices : [ "1" , "2" ] ,
55
59
ruleArguments : [ "a" , "b" ] ,
@@ -63,28 +67,37 @@ describe("reportConversionResults", () => {
63
67
const { choosePackageManager, logger } = createStubDependencies ( ) ;
64
68
65
69
// Act
66
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
70
+ await reportConversionResults (
71
+ { choosePackageManager, logger } ,
72
+ ".eslintrc.js" ,
73
+ conversionResults ,
74
+ ) ;
67
75
68
76
// Assert
69
77
expectEqualWrites (
70
78
logger . stdout . write ,
71
79
`✨ 1 rule replaced with its ESLint equivalent. ✨${ EOL } ` ,
72
80
`❗ 1 ESLint rule behaves differently from its TSLint counterpart ❗` ,
73
- ` * tslint-rule-one:` ,
74
- ` - 1` ,
75
- ` - 2` ,
81
+ ` Check ${ logger . debugFileName } for details.` ,
76
82
`` ,
77
83
`⚡ 3 packages are required for running with ESLint. ⚡` ,
78
84
` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev` ,
79
85
) ;
86
+ expectEqualWrites (
87
+ logger . info . write ,
88
+ `1 ESLint rule behaves differently from its TSLint counterpart:` ,
89
+ ` * tslint-rule-one:` ,
90
+ ` - 1` ,
91
+ ` - 2` ,
92
+ ) ;
80
93
} ) ;
81
94
82
95
it ( "logs successful conversions when there are multiple converted rules" , async ( ) => {
83
96
// Arrange
84
97
const conversionResults = createEmptyConversionResults ( {
85
98
converted : new Map < string , ESLintRuleOptions > ( [
86
99
[
87
- " tslint-rule-one" ,
100
+ ` tslint-rule-one` ,
88
101
{
89
102
notices : [ "1" , "2" ] ,
90
103
ruleArguments : [ "a" , "b" ] ,
@@ -93,7 +106,7 @@ describe("reportConversionResults", () => {
93
106
} ,
94
107
] ,
95
108
[
96
- " tslint-rule-two" ,
109
+ ` tslint-rule-two` ,
97
110
{
98
111
notices : [ "3" , "4" ] ,
99
112
ruleArguments : [ "c" , "d" ] ,
@@ -107,23 +120,32 @@ describe("reportConversionResults", () => {
107
120
const { choosePackageManager, logger } = createStubDependencies ( ) ;
108
121
109
122
// Act
110
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
123
+ await reportConversionResults (
124
+ { choosePackageManager, logger } ,
125
+ ".eslintrc.js" ,
126
+ conversionResults ,
127
+ ) ;
111
128
112
129
// Assert
113
130
expectEqualWrites (
114
131
logger . stdout . write ,
115
132
`✨ 2 rules replaced with their ESLint equivalents. ✨` ,
116
133
`` ,
117
134
`❗ 2 ESLint rules behave differently from their TSLint counterparts ❗` ,
135
+ ` Check ${ logger . debugFileName } for details.` ,
136
+ `` ,
137
+ `⚡ 3 packages are required for running with ESLint. ⚡` ,
138
+ ` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev` ,
139
+ ) ;
140
+ expectEqualWrites (
141
+ logger . info . write ,
142
+ `2 ESLint rules behave differently from their TSLint counterparts:` ,
118
143
` * tslint-rule-one:` ,
119
144
` - 1` ,
120
145
` - 2` ,
121
146
` * tslint-rule-two:` ,
122
147
` - 3` ,
123
148
` - 4` ,
124
- `` ,
125
- `⚡ 3 packages are required for running with ESLint. ⚡` ,
126
- ` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev` ,
127
149
) ;
128
150
} ) ;
129
151
@@ -136,12 +158,16 @@ describe("reportConversionResults", () => {
136
158
const { choosePackageManager, logger } = createStubDependencies ( ) ;
137
159
138
160
// Act
139
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
161
+ await reportConversionResults (
162
+ { choosePackageManager, logger } ,
163
+ ".eslintrc.js" ,
164
+ conversionResults ,
165
+ ) ;
140
166
141
167
// Assert
142
168
expectEqualWrites (
143
169
logger . stderr . write ,
144
- " ❌ 1 error thrown. ❌" ,
170
+ ` ❌ 1 error thrown. ❌` ,
145
171
` Check ${ logger . debugFileName } for details.` ,
146
172
) ;
147
173
} ) ;
@@ -155,12 +181,16 @@ describe("reportConversionResults", () => {
155
181
const { choosePackageManager, logger } = createStubDependencies ( ) ;
156
182
157
183
// Act
158
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
184
+ await reportConversionResults (
185
+ { choosePackageManager, logger } ,
186
+ ".eslintrc.js" ,
187
+ conversionResults ,
188
+ ) ;
159
189
160
190
// Assert
161
191
expectEqualWrites (
162
192
logger . stderr . write ,
163
- " ❌ 2 errors thrown. ❌" ,
193
+ ` ❌ 2 errors thrown. ❌` ,
164
194
` Check ${ logger . debugFileName } for details.` ,
165
195
) ;
166
196
} ) ;
@@ -180,20 +210,26 @@ describe("reportConversionResults", () => {
180
210
const { choosePackageManager, logger } = createStubDependencies ( ) ;
181
211
182
212
// Act
183
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
213
+ await reportConversionResults (
214
+ { choosePackageManager, logger } ,
215
+ ".eslintrc.js" ,
216
+ conversionResults ,
217
+ ) ;
184
218
185
219
// Assert
186
220
expectEqualWrites (
187
221
logger . stdout . write ,
188
- "❓ 1 rule does not yet have an ESLint equivalent ❓" ,
189
- ` See generated log file; defaulting to eslint-plugin-tslint for it.` ,
190
- "" ,
191
- "⚡ 3 packages are required for running with ESLint. ⚡" ,
192
- " yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev" ,
222
+ `❓ 1 rule is not known by tslint-to-eslint-config to have an ESLint equivalent. ❓` ,
223
+ ` The "@typescript-eslint/tslint/config" section of .eslintrc.js configures eslint-plugin-tslint to run it in TSLint within ESLint.` ,
224
+ ` Check ${ logger . debugFileName } for details.` ,
225
+ `` ,
226
+ `⚡ 3 packages are required for running with ESLint. ⚡` ,
227
+ ` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev` ,
193
228
) ;
194
229
expectEqualWrites (
195
230
logger . info . write ,
196
- 'tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-one"' ,
231
+ `1 rule is not known by tslint-to-eslint-config to have an ESLint equivalent:` ,
232
+ ' * tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-one".' ,
197
233
) ;
198
234
} ) ;
199
235
@@ -217,21 +253,27 @@ describe("reportConversionResults", () => {
217
253
const { choosePackageManager, logger } = createStubDependencies ( ) ;
218
254
219
255
// Act
220
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
256
+ await reportConversionResults (
257
+ { choosePackageManager, logger } ,
258
+ ".eslintrc.js" ,
259
+ conversionResults ,
260
+ ) ;
221
261
222
262
// Assert
223
263
expectEqualWrites (
224
264
logger . stdout . write ,
225
- "❓ 2 rules do not yet have ESLint equivalents ❓" ,
226
- ` See generated log file; defaulting to eslint-plugin-tslint for these rules.` ,
227
- "" ,
228
- "⚡ 3 packages are required for running with ESLint. ⚡" ,
229
- " yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev" ,
265
+ `❓ 2 rules are not known by tslint-to-eslint-config to have ESLint equivalents. ❓` ,
266
+ ` The "@typescript-eslint/tslint/config" section of .eslintrc.js configures eslint-plugin-tslint to run them in TSLint within ESLint.` ,
267
+ ` Check ${ logger . debugFileName } for details.` ,
268
+ `` ,
269
+ `⚡ 3 packages are required for running with ESLint. ⚡` ,
270
+ ` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint --dev` ,
230
271
) ;
231
272
expectEqualWrites (
232
273
logger . info . write ,
233
- 'tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-one"' ,
234
- 'tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-two"' ,
274
+ `2 rules are not known by tslint-to-eslint-config to have ESLint equivalents:` ,
275
+ ' * tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-one".' ,
276
+ ' * tslint-to-eslint-config does not know the ESLint equivalent for TSLint\'s "tslint-rule-two".' ,
235
277
) ;
236
278
} ) ;
237
279
@@ -244,13 +286,17 @@ describe("reportConversionResults", () => {
244
286
const { choosePackageManager, logger } = createStubDependencies ( ) ;
245
287
246
288
// Act
247
- await reportConversionResults ( { choosePackageManager, logger } , conversionResults ) ;
289
+ await reportConversionResults (
290
+ { choosePackageManager, logger } ,
291
+ ".eslintrc.js" ,
292
+ conversionResults ,
293
+ ) ;
248
294
249
295
// Assert
250
296
expectEqualWrites (
251
297
logger . stdout . write ,
252
- " ⚡ 5 packages are required for running with ESLint. ⚡" ,
253
- " yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint plugin-one plugin-two --dev" ,
298
+ ` ⚡ 5 packages are required for running with ESLint. ⚡` ,
299
+ ` yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint plugin-one plugin-two --dev` ,
254
300
) ;
255
301
} ) ;
256
302
} ) ;
0 commit comments