1
- /* eslint-disable @typescript-eslint/no-floating-promises */
2
-
1
+ import { deepStrictEqual , ifError , ok } from 'node:assert'
2
+ import { test } from 'node:test'
3
3
import { isMainThread } from 'node:worker_threads'
4
- import t from 'tap'
5
4
import { cronometro , percentiles } from '../src/index.js'
6
5
7
- async function main ( ) : Promise < void > {
8
- await new Promise ( resolve => setTimeout ( resolve , 100 ) )
6
+ await new Promise ( resolve => setTimeout ( resolve , 100 ) )
9
7
10
- if ( ! isMainThread ) {
11
- cronometro (
8
+ if ( ! isMainThread ) {
9
+ cronometro (
10
+ {
11
+ single ( ) {
12
+ Buffer . alloc ( 10 )
13
+ } ,
14
+ multiple ( ) {
15
+ Buffer . alloc ( 10 )
16
+ Buffer . alloc ( 20 )
17
+ }
18
+ } ,
19
+ ( ) => false
20
+ )
21
+ } else {
22
+ await test ( 'Collecting results' , async ( ) => {
23
+ const results = await cronometro (
12
24
{
13
25
single ( ) {
14
26
Buffer . alloc ( 10 )
@@ -18,43 +30,24 @@ async function main(): Promise<void> {
18
30
Buffer . alloc ( 20 )
19
31
}
20
32
} ,
21
- ( ) => false
33
+ { iterations : 10 , print : false }
22
34
)
23
- } else {
24
- t . test ( 'Collecting results' , async t => {
25
- const results = await cronometro (
26
- {
27
- single ( ) {
28
- Buffer . alloc ( 10 )
29
- } ,
30
- multiple ( ) {
31
- Buffer . alloc ( 10 )
32
- Buffer . alloc ( 20 )
33
- }
34
- } ,
35
- { iterations : 10 , print : false }
36
- )
37
35
38
- t . strictSame ( Object . keys ( results ) , [ 'single' , 'multiple' ] )
36
+ deepStrictEqual ( Object . keys ( results ) , [ 'single' , 'multiple' ] )
39
37
40
- for ( const entry of Object . values ( results ) ) {
41
- t . ok ( entry . success )
42
- t . type ( entry . error , 'undefined' )
43
- t . equal ( entry . size , 10 )
44
- t . type ( entry . min , 'number' )
45
- t . type ( entry . max , 'number' )
46
- t . type ( entry . mean , 'number' )
47
- t . type ( entry . stddev , 'number' )
48
- t . type ( entry . standardError , 'number' )
38
+ for ( const entry of Object . values ( results ) ) {
39
+ ok ( entry . success )
40
+ ifError ( entry . error )
41
+ deepStrictEqual ( entry . size , 10 )
42
+ deepStrictEqual ( typeof entry . min , 'number' )
43
+ deepStrictEqual ( typeof entry . max , 'number' )
44
+ deepStrictEqual ( typeof entry . mean , 'number' )
45
+ deepStrictEqual ( typeof entry . stddev , 'number' )
46
+ deepStrictEqual ( typeof entry . standardError , 'number' )
49
47
50
- for ( const percentile of percentiles ) {
51
- t . type ( entry . percentiles [ percentile . toString ( ) ] , 'number' )
52
- }
48
+ for ( const percentile of percentiles ) {
49
+ ok ( typeof entry . percentiles [ percentile . toString ( ) ] , 'number' )
53
50
}
54
- } )
55
- }
51
+ }
52
+ } )
56
53
}
57
-
58
- main ( )
59
-
60
- export default main
0 commit comments