@@ -15,74 +15,74 @@ suite("MI Parse", () => {
15
15
test ( "Simple out of band record" , ( ) => {
16
16
const parsed = parseMI ( `4=thread-exited,id="3",group-id="i1"` ) ;
17
17
assert . ok ( parsed ) ;
18
- assert . equal ( parsed . token , 4 ) ;
19
- assert . equal ( parsed . outOfBandRecord . length , 1 ) ;
20
- assert . equal ( parsed . outOfBandRecord [ 0 ] . isStream , false ) ;
21
- assert . equal ( parsed . outOfBandRecord [ 0 ] . asyncClass , "thread-exited" ) ;
22
- assert . equal ( parsed . outOfBandRecord [ 0 ] . output . length , 2 ) ;
23
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 0 ] , [ "id" , "3" ] ) ;
24
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 1 ] , [ "group-id" , "i1" ] ) ;
25
- assert . equal ( parsed . resultRecords , undefined ) ;
18
+ assert . strictEqual ( parsed . token , 4 ) ;
19
+ assert . strictEqual ( parsed . outOfBandRecord . length , 1 ) ;
20
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . isStream , false ) ;
21
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . asyncClass , "thread-exited" ) ;
22
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . output . length , 2 ) ;
23
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 0 ] , [ "id" , "3" ] ) ;
24
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 1 ] , [ "group-id" , "i1" ] ) ;
25
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
26
26
} ) ;
27
27
test ( "Console stream output with new line" , ( ) => {
28
28
const parsed = parseMI ( `~"[Thread 0x7fffe993a700 (LWP 11002) exited]\\n"` ) ;
29
29
assert . ok ( parsed ) ;
30
- assert . equal ( parsed . token , undefined ) ;
31
- assert . equal ( parsed . outOfBandRecord . length , 1 ) ;
32
- assert . equal ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
33
- assert . equal ( parsed . outOfBandRecord [ 0 ] . content , "[Thread 0x7fffe993a700 (LWP 11002) exited]\n" ) ;
34
- assert . equal ( parsed . resultRecords , undefined ) ;
30
+ assert . strictEqual ( parsed . token , undefined ) ;
31
+ assert . strictEqual ( parsed . outOfBandRecord . length , 1 ) ;
32
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
33
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . content , "[Thread 0x7fffe993a700 (LWP 11002) exited]\n" ) ;
34
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
35
35
} ) ;
36
36
test ( "Unicode" , ( ) => {
37
37
let parsed = parseMI ( `~"[Depuraci\\303\\263n de hilo usando libthread_db enabled]\\n"` ) ;
38
38
assert . ok ( parsed ) ;
39
- assert . equal ( parsed . token , undefined ) ;
40
- assert . equal ( parsed . outOfBandRecord . length , 1 ) ;
41
- assert . equal ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
42
- assert . equal ( parsed . outOfBandRecord [ 0 ] . content , "[Depuración de hilo usando libthread_db enabled]\n" ) ;
43
- assert . equal ( parsed . resultRecords , undefined ) ;
39
+ assert . strictEqual ( parsed . token , undefined ) ;
40
+ assert . strictEqual ( parsed . outOfBandRecord . length , 1 ) ;
41
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
42
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . content , "[Depuración de hilo usando libthread_db enabled]\n" ) ;
43
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
44
44
parsed = parseMI ( `~"4\\t std::cout << \\"\\345\\245\\275\\345\\245\\275\\345\\255\\246\\344\\271\\240\\357\\274\\214\\345\\244\\251\\345\\244\\251\\345\\220\\221\\344\\270\\212\\" << std::endl;\\n"` ) ;
45
45
assert . ok ( parsed ) ;
46
- assert . equal ( parsed . token , undefined ) ;
47
- assert . equal ( parsed . outOfBandRecord . length , 1 ) ;
48
- assert . equal ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
49
- assert . equal ( parsed . outOfBandRecord [ 0 ] . content , `4\t std::cout << "好好学习,天天向上" << std::endl;\n` ) ;
50
- assert . equal ( parsed . resultRecords , undefined ) ;
46
+ assert . strictEqual ( parsed . token , undefined ) ;
47
+ assert . strictEqual ( parsed . outOfBandRecord . length , 1 ) ;
48
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . isStream , true ) ;
49
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . content , `4\t std::cout << "好好学习,天天向上" << std::endl;\n` ) ;
50
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
51
51
} ) ;
52
52
test ( "Empty line" , ( ) => {
53
53
const parsed = parseMI ( `` ) ;
54
54
assert . ok ( parsed ) ;
55
- assert . equal ( parsed . token , undefined ) ;
56
- assert . equal ( parsed . outOfBandRecord . length , 0 ) ;
57
- assert . equal ( parsed . resultRecords , undefined ) ;
55
+ assert . strictEqual ( parsed . token , undefined ) ;
56
+ assert . strictEqual ( parsed . outOfBandRecord . length , 0 ) ;
57
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
58
58
} ) ;
59
59
test ( "'(gdb)' line" , ( ) => {
60
60
const parsed = parseMI ( `(gdb)` ) ;
61
61
assert . ok ( parsed ) ;
62
- assert . equal ( parsed . token , undefined ) ;
63
- assert . equal ( parsed . outOfBandRecord . length , 0 ) ;
64
- assert . equal ( parsed . resultRecords , undefined ) ;
62
+ assert . strictEqual ( parsed . token , undefined ) ;
63
+ assert . strictEqual ( parsed . outOfBandRecord . length , 0 ) ;
64
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
65
65
} ) ;
66
66
test ( "Simple result record" , ( ) => {
67
67
const parsed = parseMI ( `1^running` ) ;
68
68
assert . ok ( parsed ) ;
69
- assert . equal ( parsed . token , 1 ) ;
70
- assert . equal ( parsed . outOfBandRecord . length , 0 ) ;
71
- assert . notEqual ( parsed . resultRecords , undefined ) ;
72
- assert . equal ( parsed . resultRecords . resultClass , "running" ) ;
73
- assert . equal ( parsed . resultRecords . results . length , 0 ) ;
69
+ assert . strictEqual ( parsed . token , 1 ) ;
70
+ assert . strictEqual ( parsed . outOfBandRecord . length , 0 ) ;
71
+ assert . notStrictEqual ( parsed . resultRecords , undefined ) ;
72
+ assert . strictEqual ( parsed . resultRecords . resultClass , "running" ) ;
73
+ assert . strictEqual ( parsed . resultRecords . results . length , 0 ) ;
74
74
} ) ;
75
75
test ( "Advanced out of band record (Breakpoint hit)" , ( ) => {
76
76
const parsed = parseMI ( `*stopped,reason="breakpoint-hit",disp="keep",bkptno="1",frame={addr="0x00000000004e807f",func="D main",args=[{name="args",value="..."}],file="source/app.d",fullname="/path/to/source/app.d",line="157"},thread-id="1",stopped-threads="all",core="0"` ) ;
77
77
assert . ok ( parsed ) ;
78
- assert . equal ( parsed . token , undefined ) ;
79
- assert . equal ( parsed . outOfBandRecord . length , 1 ) ;
80
- assert . equal ( parsed . outOfBandRecord [ 0 ] . isStream , false ) ;
81
- assert . equal ( parsed . outOfBandRecord [ 0 ] . asyncClass , "stopped" ) ;
82
- assert . equal ( parsed . outOfBandRecord [ 0 ] . output . length , 7 ) ;
83
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 0 ] , [ "reason" , "breakpoint-hit" ] ) ;
84
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 1 ] , [ "disp" , "keep" ] ) ;
85
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 2 ] , [ "bkptno" , "1" ] ) ;
78
+ assert . strictEqual ( parsed . token , undefined ) ;
79
+ assert . strictEqual ( parsed . outOfBandRecord . length , 1 ) ;
80
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . isStream , false ) ;
81
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . asyncClass , "stopped" ) ;
82
+ assert . strictEqual ( parsed . outOfBandRecord [ 0 ] . output . length , 7 ) ;
83
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 0 ] , [ "reason" , "breakpoint-hit" ] ) ;
84
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 1 ] , [ "disp" , "keep" ] ) ;
85
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 2 ] , [ "bkptno" , "1" ] ) ;
86
86
const frame = [
87
87
[ "addr" , "0x00000000004e807f" ] ,
88
88
[ "func" , "D main" ] ,
@@ -91,20 +91,20 @@ suite("MI Parse", () => {
91
91
[ "fullname" , "/path/to/source/app.d" ] ,
92
92
[ "line" , "157" ]
93
93
] ;
94
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 3 ] , [ "frame" , frame ] ) ;
95
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 4 ] , [ "thread-id" , "1" ] ) ;
96
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 5 ] , [ "stopped-threads" , "all" ] ) ;
97
- assert . deepEqual ( parsed . outOfBandRecord [ 0 ] . output [ 6 ] , [ "core" , "0" ] ) ;
98
- assert . equal ( parsed . resultRecords , undefined ) ;
94
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 3 ] , [ "frame" , frame ] ) ;
95
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 4 ] , [ "thread-id" , "1" ] ) ;
96
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 5 ] , [ "stopped-threads" , "all" ] ) ;
97
+ assert . deepStrictEqual ( parsed . outOfBandRecord [ 0 ] . output [ 6 ] , [ "core" , "0" ] ) ;
98
+ assert . strictEqual ( parsed . resultRecords , undefined ) ;
99
99
} ) ;
100
100
test ( "Advanced result record" , ( ) => {
101
101
const parsed = parseMI ( `2^done,asm_insns=[src_and_asm_line={line="134",file="source/app.d",fullname="/path/to/source/app.d",line_asm_insn=[{address="0x00000000004e7da4",func-name="_Dmain",offset="0",inst="push %rbp"},{address="0x00000000004e7da5",func-name="_Dmain",offset="1",inst="mov %rsp,%rbp"}]}]` ) ;
102
102
assert . ok ( parsed ) ;
103
- assert . equal ( parsed . token , 2 ) ;
104
- assert . equal ( parsed . outOfBandRecord . length , 0 ) ;
105
- assert . notEqual ( parsed . resultRecords , undefined ) ;
106
- assert . equal ( parsed . resultRecords . resultClass , "done" ) ;
107
- assert . equal ( parsed . resultRecords . results . length , 1 ) ;
103
+ assert . strictEqual ( parsed . token , 2 ) ;
104
+ assert . strictEqual ( parsed . outOfBandRecord . length , 0 ) ;
105
+ assert . notStrictEqual ( parsed . resultRecords , undefined ) ;
106
+ assert . strictEqual ( parsed . resultRecords . resultClass , "done" ) ;
107
+ assert . strictEqual ( parsed . resultRecords . results . length , 1 ) ;
108
108
const asmInsns = [
109
109
"asm_insns" ,
110
110
[
@@ -135,8 +135,8 @@ suite("MI Parse", () => {
135
135
]
136
136
]
137
137
] ;
138
- assert . deepEqual ( parsed . resultRecords . results [ 0 ] , asmInsns ) ;
139
- assert . equal ( parsed . result ( "asm_insns.src_and_asm_line.line_asm_insn[1].address" ) , "0x00000000004e7da5" ) ;
138
+ assert . deepStrictEqual ( parsed . resultRecords . results [ 0 ] , asmInsns ) ;
139
+ assert . strictEqual ( parsed . result ( "asm_insns.src_and_asm_line.line_asm_insn[1].address" ) , "0x00000000004e7da5" ) ;
140
140
} ) ;
141
141
test ( "valueof children" , ( ) => {
142
142
const obj = [
@@ -169,39 +169,39 @@ suite("MI Parse", () => {
169
169
]
170
170
] ;
171
171
172
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.level" ) , "0" ) ;
173
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.addr" ) , "0x0000000000435f70" ) ;
174
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.func" ) , "D main" ) ;
175
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.file" ) , "source/app.d" ) ;
176
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.fullname" ) , "/path/to/source/app.d" ) ;
177
- assert . equal ( MINode . valueOf ( obj [ 0 ] , "@frame.line" ) , "5" ) ;
172
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.level" ) , "0" ) ;
173
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.addr" ) , "0x0000000000435f70" ) ;
174
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.func" ) , "D main" ) ;
175
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.file" ) , "source/app.d" ) ;
176
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.fullname" ) , "/path/to/source/app.d" ) ;
177
+ assert . strictEqual ( MINode . valueOf ( obj [ 0 ] , "@frame.line" ) , "5" ) ;
178
178
179
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.level" ) , "1" ) ;
180
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.addr" ) , "0x00000000004372d3" ) ;
181
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.func" ) , "rt.dmain2._d_run_main()" ) ;
182
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.file" ) , undefined ) ;
183
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.fullname" ) , undefined ) ;
184
- assert . equal ( MINode . valueOf ( obj [ 1 ] , "@frame.line" ) , undefined ) ;
179
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.level" ) , "1" ) ;
180
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.addr" ) , "0x00000000004372d3" ) ;
181
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.func" ) , "rt.dmain2._d_run_main()" ) ;
182
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.file" ) , undefined ) ;
183
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.fullname" ) , undefined ) ;
184
+ assert . strictEqual ( MINode . valueOf ( obj [ 1 ] , "@frame.line" ) , undefined ) ;
185
185
} ) ;
186
186
test ( "empty string values" , ( ) => {
187
187
const parsed = parseMI ( `15^done,register-names=["r0","pc","","xpsr","","control"]` ) ;
188
188
const result = parsed . result ( 'register-names' ) ;
189
- assert . deepEqual ( result , [ "r0" , "pc" , "" , "xpsr" , "" , "control" ] ) ;
189
+ assert . deepStrictEqual ( result , [ "r0" , "pc" , "" , "xpsr" , "" , "control" ] ) ;
190
190
} ) ;
191
191
test ( "empty string value first and last" , ( ) => {
192
192
const parsed = parseMI ( `15^done,register-names=["","r0","pc","","xpsr","","control",""]` ) ;
193
193
const result = parsed . result ( 'register-names' ) ;
194
- assert . deepEqual ( result , [ "" , "r0" , "pc" , "" , "xpsr" , "" , "control" , "" ] ) ;
194
+ assert . deepStrictEqual ( result , [ "" , "r0" , "pc" , "" , "xpsr" , "" , "control" , "" ] ) ;
195
195
} ) ;
196
196
test ( "empty array values" , ( ) => {
197
197
const parsed = parseMI ( `15^done,foo={x=[],y="y"}` ) ;
198
- assert . deepEqual ( parsed . result ( 'foo.x' ) , [ ] ) ;
199
- assert . equal ( parsed . result ( 'foo.y' ) , "y" ) ;
198
+ assert . deepStrictEqual ( parsed . result ( 'foo.x' ) , [ ] ) ;
199
+ assert . strictEqual ( parsed . result ( 'foo.y' ) , "y" ) ;
200
200
} ) ;
201
201
test ( "empty object values" , ( ) => {
202
202
// GDB may send {} as empty array
203
203
const parsed = parseMI ( `15^done,foo={x={},y="y"}` ) ;
204
- assert . deepEqual ( parsed . result ( 'foo.x' ) , [ ] ) ;
205
- assert . equal ( parsed . result ( 'foo.y' ) , "y" ) ;
204
+ assert . deepStrictEqual ( parsed . result ( 'foo.x' ) , [ ] ) ;
205
+ assert . strictEqual ( parsed . result ( 'foo.y' ) , "y" ) ;
206
206
} ) ;
207
207
} ) ;
0 commit comments