1
1
import { expect } from 'chai' ;
2
2
import { diag , XmlDocument } from '@libxml2-wasm/lib/index.mjs' ;
3
3
4
- describe ( 'memDiag ' , ( ) => {
4
+ describe ( 'diagnostics ' , ( ) => {
5
5
it ( 'should report remaining objects' , ( ) => {
6
- diag . memDiag ( { enabled : true } ) ;
6
+ diag . configure ( { enabled : true } ) ;
7
7
const xml1 = XmlDocument . fromString ( '<doc/>' ) ;
8
8
const xml2 = XmlDocument . fromString ( '<doc/>' ) ;
9
9
10
10
xml1 . dispose ( ) ;
11
- const report = diag . memReport ( ) ;
11
+ const report = diag . report ( ) ;
12
12
13
13
expect ( report . XmlDocument ) . is . not . null ;
14
14
expect ( report . XmlDocument . totalInstances ) . to . equal ( 1 ) ;
@@ -17,13 +17,13 @@ describe('memDiag', () => {
17
17
expect ( report . XmlDocument . instances [ 0 ] . caller ) . to . be . undefined ;
18
18
expect ( report . XmlDocument . callers ) . to . be . undefined ;
19
19
xml2 . dispose ( ) ;
20
- diag . memDiag ( { enabled : false } ) ;
20
+ diag . configure ( { enabled : false } ) ;
21
21
} ) ;
22
22
23
23
it ( 'should report caller detail' , ( ) => {
24
- diag . memDiag ( { enabled : true , callerDetail : true } ) ;
24
+ diag . configure ( { enabled : true , callerDetail : true } ) ;
25
25
const xml = XmlDocument . fromString ( '<doc/>' ) ;
26
- const report = diag . memReport ( ) ;
26
+ const report = diag . report ( ) ;
27
27
28
28
expect ( report . XmlDocument ) . is . not . null ;
29
29
expect ( report . XmlDocument . totalInstances ) . to . equal ( 1 ) ;
@@ -32,13 +32,13 @@ describe('memDiag', () => {
32
32
expect ( report . XmlDocument . instances [ 0 ] . caller ) . to . be . a ( 'string' ) ;
33
33
expect ( report . XmlDocument . callers ) . to . be . undefined ;
34
34
xml . dispose ( ) ;
35
- diag . memDiag ( { enabled : false } ) ;
35
+ diag . configure ( { enabled : false } ) ;
36
36
} ) ;
37
37
38
38
it ( 'should report caller stats' , ( ) => {
39
- diag . memDiag ( { enabled : true , callerStats : true } ) ;
39
+ diag . configure ( { enabled : true , callerStats : true } ) ;
40
40
const xml = XmlDocument . fromString ( '<doc/>' ) ;
41
- const report = diag . memReport ( ) ;
41
+ const report = diag . report ( ) ;
42
42
43
43
expect ( report . XmlDocument ) . is . not . null ;
44
44
expect ( report . XmlDocument . totalInstances ) . to . equal ( 1 ) ;
@@ -47,57 +47,57 @@ describe('memDiag', () => {
47
47
expect ( report . XmlDocument . instances [ 0 ] . caller ) . to . be . undefined ;
48
48
expect ( Object . values ( report . XmlDocument . callers ) ) . to . deep . equal ( [ 1 ] ) ;
49
49
xml . dispose ( ) ;
50
- diag . memDiag ( { enabled : false } ) ;
50
+ diag . configure ( { enabled : false } ) ;
51
51
} ) ;
52
52
53
53
it ( 'could report caller stat for GC\'ed instance' , async ( ) => {
54
- diag . memDiag ( { enabled : true , callerStats : true } ) ;
54
+ diag . configure ( { enabled : true , callerStats : true } ) ;
55
55
XmlDocument . fromString ( '<doc/>' ) ; // to be GC'ed
56
56
57
57
// allow finalizer to run
58
58
await new Promise ( ( resolve ) => { setTimeout ( resolve , 0 ) ; } ) ;
59
59
( global as any ) . gc ( ) ;
60
- const report = diag . memReport ( ) ;
60
+ const report = diag . report ( ) ;
61
61
62
62
expect ( report . XmlDocument ) . is . not . null ;
63
63
expect ( report . XmlDocument . totalInstances ) . to . equal ( 1 ) ;
64
64
expect ( report . XmlDocument . garbageCollected ) . to . equal ( 1 ) ;
65
65
expect ( report . XmlDocument . instances ) . to . deep . equal ( [ ] ) ;
66
66
expect ( Object . values ( report . XmlDocument . callers ) ) . to . deep . equal ( [ 1 ] ) ;
67
- diag . memDiag ( { enabled : false } ) ;
67
+ diag . configure ( { enabled : false } ) ;
68
68
} ) ;
69
69
70
70
it ( 'should report GC\'ed objects' , async ( ) => {
71
- diag . memDiag ( { enabled : true } ) ;
71
+ diag . configure ( { enabled : true } ) ;
72
72
const xml1 = XmlDocument . fromString ( '<doc/>' ) ;
73
73
XmlDocument . fromString ( '<doc/>' ) ; // to be GC'ed
74
74
75
75
// allow finalizer to run
76
76
await new Promise ( ( resolve ) => { setTimeout ( resolve , 0 ) ; } ) ;
77
77
( global as any ) . gc ( ) ;
78
- const report = diag . memReport ( ) ;
78
+ const report = diag . report ( ) ;
79
79
80
80
expect ( report . XmlDocument ) . is . not . null ;
81
81
expect ( report . XmlDocument . totalInstances ) . to . equal ( 2 ) ;
82
82
expect ( report . XmlDocument . garbageCollected ) . to . equal ( 1 ) ;
83
83
expect ( report . XmlDocument . instances [ 0 ] . instance ) . to . equal ( xml1 ) ;
84
84
xml1 . dispose ( ) ;
85
- diag . memDiag ( { enabled : false } ) ;
85
+ diag . configure ( { enabled : false } ) ;
86
86
} ) ;
87
87
88
88
it ( 'will not track allocation before enabled' , ( ) => {
89
89
const xml1 = XmlDocument . fromString ( '<doc/>' ) ;
90
- diag . memDiag ( { enabled : true } ) ;
90
+ diag . configure ( { enabled : true } ) ;
91
91
const xml2 = XmlDocument . fromString ( '<doc/>' ) ;
92
92
93
- const report = diag . memReport ( ) ;
93
+ const report = diag . report ( ) ;
94
94
95
95
expect ( report . XmlDocument ) . is . not . null ;
96
96
expect ( report . XmlDocument . totalInstances ) . to . equal ( 1 ) ;
97
97
expect ( report . XmlDocument . garbageCollected ) . to . equal ( 0 ) ;
98
98
expect ( report . XmlDocument . instances [ 0 ] . instance ) . to . equal ( xml2 ) ;
99
99
xml2 . dispose ( ) ;
100
100
xml1 . dispose ( ) ;
101
- diag . memDiag ( { enabled : false } ) ;
101
+ diag . configure ( { enabled : false } ) ;
102
102
} ) ;
103
103
} ) ;
0 commit comments