@@ -10,12 +10,6 @@ const { Session } = require('inspector');
1010
1111const  session  =  new  Session ( ) ; 
1212
13- function  compareIgnoringOrder ( array1 ,  array2 )  { 
14-   const  set  =  new  Set ( array1 ) ; 
15-   const  test  =  set . size  ===  array2 . length  &&  array2 . every ( ( el )  =>  set . has ( el ) ) ; 
16-   assert . ok ( test ,  `[${ array1 }  ] differs from [${ array2 }  ]` ) ; 
17- } 
18- 
1913function  post ( message ,  data )  { 
2014  return  new  Promise ( ( resolve ,  reject )  =>  { 
2115    session . post ( message ,  data ,  ( err ,  result )  =>  { 
@@ -48,25 +42,33 @@ async function test() {
4842  session . on ( 'NodeTracing.dataCollected' ,  ( n )  =>  traceNotification  =  n ) ; 
4943  session . on ( 'NodeTracing.tracingComplete' ,  ( )  =>  tracingComplete  =  true ) ; 
5044  const  {  categories }  =  await  post ( 'NodeTracing.getCategories' ) ; 
51-   compareIgnoringOrder ( [ 'node' , 
52-                         'node.async_hooks' , 
53-                         'node.bootstrap' , 
54-                         'node.console' , 
55-                         'node.dns.native' , 
56-                         'node.net.native' , 
57-                         'node.environment' , 
58-                         'node.fs.sync' , 
59-                         'node.fs_dir.sync' , 
60-                         'node.fs.async' , 
61-                         'node.fs_dir.async' , 
62-                         'node.perf' , 
63-                         'node.perf.usertiming' , 
64-                         'node.perf.timerify' , 
65-                         'node.promises.rejections' , 
66-                         'node.vm.script' , 
67-                         'v8' , 
68-                         'node.http' , 
69-   ] ,  categories ) ; 
45+   const  expectedCategories  =  [ 
46+     'node' , 
47+     'node.async_hooks' , 
48+     'node.bootstrap' , 
49+     'node.console' , 
50+     'node.dns.native' , 
51+     'node.environment' , 
52+     'node.fs.async' , 
53+     'node.fs.sync' , 
54+     'node.fs_dir.async' , 
55+     'node.fs_dir.sync' , 
56+     'node.http' , 
57+     'node.net.native' , 
58+     'node.perf' , 
59+     'node.perf.timerify' , 
60+     'node.perf.usertiming' , 
61+     'node.promises.rejections' , 
62+     'node.threadpoolwork.async' , 
63+     'node.threadpoolwork.sync' , 
64+     'node.vm.script' , 
65+     'v8' , 
66+   ] . sort ( ) ; 
67+   assert . ok ( categories . length  ===  expectedCategories . length ) ; 
68+   categories . forEach ( ( category ,  index )  =>  { 
69+     const  value  =  expectedCategories [ index ] ; 
70+     assert . ok ( category  ===  value ,  `${ category }   is out of order, expect ${ value }  ` ) ; 
71+   } ) ; 
7072
7173  const  traceConfig  =  {  includedCategories : [ 'v8' ]  } ; 
7274  await  post ( 'NodeTracing.start' ,  {  traceConfig } ) ; 
0 commit comments