1
+ import assert from 'node:assert/strict'
1
2
import path from 'node:path'
2
3
import process from 'node:process'
3
- import test from 'tape '
4
+ import test from 'node:test '
4
5
import strip from 'strip-ansi'
5
6
import { VFile } from 'vfile'
6
7
import reporterDefault , { reporter } from './index.js'
@@ -50,47 +51,44 @@ try {
50
51
}
51
52
/* eslint-enable no-undef */
52
53
53
- test ( 'vfile-reporter' , ( t ) => {
54
- t . equal (
54
+ test ( 'vfile-reporter' , ( ) => {
55
+ assert . equal (
55
56
reporter ,
56
57
reporterDefault ,
57
58
'should expose `reporter` as a named and a default export'
58
59
)
59
60
60
- /** @type {VFile } */
61
- let file
61
+ assert . equal ( reporter ( ) , '' , 'should return empty without a file' )
62
62
63
- t . equal ( reporter ( ) , '' , 'should return empty without a file ' )
63
+ assert . equal ( reporter ( [ ] ) , '' , 'should return empty when not given files ' )
64
64
65
- t . equal ( reporter ( [ ] ) , '' , 'should return empty when not given files ' )
65
+ assert . equal ( reporter ( exception ) , exception . stack , 'should support an error ' )
66
66
67
- t . equal ( reporter ( exception ) , exception . stack , 'should support an error' )
68
-
69
- file = new VFile ( { path : 'a.js' } )
67
+ let file = new VFile ( { path : 'a.js' } )
70
68
71
69
try {
72
70
file . fail ( 'Error!' )
73
71
} catch { }
74
72
75
- t . equal (
73
+ assert . equal (
76
74
reporter ( file . messages [ 0 ] ) ,
77
75
'a.js:1:1: Error!' ,
78
76
'should support a fatal message'
79
77
)
80
78
81
- t . equal (
79
+ assert . equal (
82
80
strip ( reporter ( new VFile ( { path : 'a.js' } ) ) ) ,
83
81
'a.js: no issues found' ,
84
82
'should work on a single file'
85
83
)
86
84
87
- t . equal (
85
+ assert . equal (
88
86
strip ( reporter ( new VFile ( ) ) ) ,
89
87
'no issues found' ,
90
88
'should work without file-paths'
91
89
)
92
90
93
- t . equal (
91
+ assert . equal (
94
92
strip ( reporter ( [ new VFile ( { path : 'a.js' } ) , new VFile ( { path : 'b.js' } ) ] ) ) ,
95
93
'a.js: no issues found\nb.js: no issues found' ,
96
94
'should work on files without messages'
@@ -99,7 +97,7 @@ test('vfile-reporter', (t) => {
99
97
file = new VFile ( { path : 'a.js' } )
100
98
file . message ( 'Warning!' )
101
99
102
- t . equal (
100
+ assert . equal (
103
101
strip ( reporter ( [ file , new VFile ( { path : 'b.js' } ) ] ) ) ,
104
102
[
105
103
'a.js' ,
@@ -118,7 +116,7 @@ test('vfile-reporter', (t) => {
118
116
file . fail ( 'Error!' )
119
117
} catch { }
120
118
121
- t . equal (
119
+ assert . equal (
122
120
strip ( reporter ( [ file , new VFile ( { path : 'b.js' } ) ] ) ) ,
123
121
[
124
122
'a.js' ,
@@ -146,7 +144,7 @@ test('vfile-reporter', (t) => {
146
144
file . fail ( 'Another error!' )
147
145
} catch { }
148
146
149
- t . equal (
147
+ assert . equal (
150
148
strip ( reporter ( file ) ) ,
151
149
[
152
150
'a.js' ,
@@ -166,7 +164,7 @@ test('vfile-reporter', (t) => {
166
164
'should work on files with multiple mixed messages'
167
165
)
168
166
169
- t . equal (
167
+ assert . equal (
170
168
reporter ( file , { color : false } ) ,
171
169
[
172
170
'a.js' ,
@@ -189,7 +187,7 @@ test('vfile-reporter', (t) => {
189
187
file = new VFile ( )
190
188
Object . assign ( file . message ( 'Warning!' ) , { position : null } )
191
189
192
- t . equal (
190
+ assert . equal (
193
191
strip ( reporter ( file ) ) ,
194
192
' warning Warning!\n\n' + chars . warning + ' 1 warning' ,
195
193
'should support a missing position'
@@ -198,7 +196,7 @@ test('vfile-reporter', (t) => {
198
196
file = new VFile ( )
199
197
file . message ( 'Warning!' , { line : 3 , column : 2 } )
200
198
201
- t . equal (
199
+ assert . equal (
202
200
strip ( reporter ( file ) ) ,
203
201
[ ' 3:2 warning Warning!' , '' , chars . warning + ' 1 warning' ] . join ( '\n' ) ,
204
202
'should support a single point'
@@ -210,7 +208,7 @@ test('vfile-reporter', (t) => {
210
208
end : { line : 4 , column : 8 }
211
209
} )
212
210
213
- t . equal (
211
+ assert . equal (
214
212
strip ( reporter ( file ) ) ,
215
213
[ ' 3:2-4:8 warning Warning!' , '' , chars . warning + ' 1 warning' ] . join (
216
214
'\n'
@@ -225,7 +223,7 @@ test('vfile-reporter', (t) => {
225
223
} )
226
224
file . basename = 'foo.bar'
227
225
228
- t . equal (
226
+ assert . equal (
229
227
strip ( reporter ( file ) ) ,
230
228
[
231
229
'foo.bar' ,
@@ -242,7 +240,7 @@ test('vfile-reporter', (t) => {
242
240
file . fail ( exception )
243
241
} catch { }
244
242
245
- t . equal (
243
+ assert . equal (
246
244
cleanStack ( strip ( reporter ( file ) ) , 3 ) ,
247
245
[
248
246
'test.js' ,
@@ -258,7 +256,7 @@ test('vfile-reporter', (t) => {
258
256
file . fail ( exception , undefined , 'foo:bar' )
259
257
} catch { }
260
258
261
- t . equal (
259
+ assert . equal (
262
260
cleanStack ( strip ( reporter ( file ) ) , 3 ) ,
263
261
[
264
262
'test.js' ,
@@ -274,7 +272,7 @@ test('vfile-reporter', (t) => {
274
272
file . fail ( changedMessage )
275
273
} catch { }
276
274
277
- t . equal (
275
+ assert . equal (
278
276
cleanStack ( strip ( reporter ( file ) ) , 3 ) ,
279
277
'test.js\n 1:1 error ReferenceError: foo\n at test.js:1:1' ,
280
278
'should support a “real” error with a changed message'
@@ -286,7 +284,7 @@ test('vfile-reporter', (t) => {
286
284
file . fail ( multilineException )
287
285
} catch { }
288
286
289
- t . equal (
287
+ assert . equal (
290
288
cleanStack ( strip ( reporter ( file ) ) , 5 ) ,
291
289
[
292
290
'test.js' ,
@@ -304,7 +302,7 @@ test('vfile-reporter', (t) => {
304
302
file . fail ( multilineException , undefined , 'alpha:bravo' )
305
303
} catch { }
306
304
307
- t . equal (
305
+ assert . equal (
308
306
cleanStack ( strip ( reporter ( file ) ) , 5 ) ,
309
307
[
310
308
'test.js' ,
@@ -321,7 +319,7 @@ test('vfile-reporter', (t) => {
321
319
warning . note = 'Lorem ipsum dolor sit amet.'
322
320
file . message ( '...and some more warnings' )
323
321
324
- t . equal (
322
+ assert . equal (
325
323
strip ( reporter ( file , { verbose : true } ) ) ,
326
324
[
327
325
'a.js' ,
@@ -337,7 +335,7 @@ test('vfile-reporter', (t) => {
337
335
file = new VFile ( { path : 'a.js' } )
338
336
file . message ( 'Warning!' )
339
337
340
- t . equal (
338
+ assert . equal (
341
339
strip ( reporter ( [ file , new VFile ( { path : 'b.js' } ) ] , { quiet : true } ) ) ,
342
340
[ 'a.js' , ' 1:1 warning Warning!' , '' , chars . warning + ' 1 warning' ] . join (
343
341
'\n'
@@ -354,7 +352,7 @@ test('vfile-reporter', (t) => {
354
352
355
353
fileB . message ( 'Warning!' )
356
354
357
- t . equal (
355
+ assert . equal (
358
356
strip ( reporter ( [ file , fileB ] , { silent : true } ) ) ,
359
357
[ 'a.js' , ' 1:1 error Error!' , '' , chars . error + ' 1 error' ] . join ( '\n' ) ,
360
358
'should ignore non-failures in `silent` mode'
@@ -363,7 +361,7 @@ test('vfile-reporter', (t) => {
363
361
file = new VFile ( { path : 'a.js' } )
364
362
file . stem = 'b'
365
363
366
- t . equal (
364
+ assert . equal (
367
365
strip ( reporter ( file ) ) ,
368
366
'a.js: no issues found' ,
369
367
'should support `history`'
@@ -372,9 +370,13 @@ test('vfile-reporter', (t) => {
372
370
file = new VFile ( { path : 'a.js' } )
373
371
file . stored = true
374
372
375
- t . equal ( strip ( reporter ( file ) ) , 'a.js: written' , 'should support `stored`' )
373
+ assert . equal (
374
+ strip ( reporter ( file ) ) ,
375
+ 'a.js: written' ,
376
+ 'should support `stored`'
377
+ )
376
378
377
- t . equal (
379
+ assert . equal (
378
380
reporter ( file , { color : false } ) ,
379
381
'a.js: written' ,
380
382
'should support `stored` (w/o color)'
@@ -384,29 +386,27 @@ test('vfile-reporter', (t) => {
384
386
file . stem = 'b'
385
387
file . stored = true
386
388
387
- t . equal (
389
+ assert . equal (
388
390
strip ( reporter ( file ) ) ,
389
391
'a.js > b.js: written' ,
390
392
'should expose the stored file-path'
391
393
)
392
394
393
- t . equal (
395
+ assert . equal (
394
396
reporter ( new VFile ( { path : 'a.js' } ) , { color : true } ) ,
395
397
'\u001B[4m\u001B[32ma.js\u001B[39m\u001B[24m: no issues found' ,
396
398
'should support `color: true`'
397
399
)
398
400
399
- t . equal (
401
+ assert . equal (
400
402
reporter ( new VFile ( { path : 'a.js' } ) , { color : false } ) ,
401
403
'a.js: no issues found' ,
402
404
'should support `color: false`'
403
405
)
404
-
405
- t . end ( )
406
406
} )
407
407
408
408
/**
409
- * @param {string| undefined } stack
409
+ * @param {string | undefined } stack
410
410
* @param {number } max
411
411
*/
412
412
function cleanStack ( stack , max ) {
0 commit comments