@@ -112,18 +112,18 @@ suite("[Inlay hints test]", function(): void {
112
112
const result2 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
113
113
assert . strictEqual ( result2 . length , 12 , "Incorrect number of results." ) ;
114
114
const expectedKind = vscode . InlayHintKind . Type ;
115
- assertHintValues ( result2 [ 0 ] , 16 , 16 , ": int *const" , expectedKind ) ;
116
- assertHintValues ( result2 [ 1 ] , 17 , 17 , ": const int *const" , expectedKind ) ;
117
- assertHintValues ( result2 [ 2 ] , 18 , 18 , ": const int *const &" , expectedKind ) ;
118
- assertHintValues ( result2 [ 3 ] , 19 , 19 , ": const int *const" , expectedKind ) ;
119
- assertHintValues ( result2 [ 4 ] , 20 , 17 , ": const int" , expectedKind ) ;
120
- assertHintValues ( result2 [ 5 ] , 21 , 12 , ": const int &" , expectedKind ) ;
121
- assertHintValues ( result2 [ 6 ] , 22 , 21 , ": const int &" , expectedKind ) ;
122
- assertHintValues ( result2 [ 7 ] , 23 , 21 , ": const int *" , expectedKind ) ;
123
- assertHintValues ( result2 [ 8 ] , 24 , 21 , ": int *" , expectedKind ) ;
124
- assertHintValues ( result2 [ 9 ] , 25 , 21 , ": const int *" , expectedKind ) ;
125
- assertHintValues ( result2 [ 10 ] , 28 , 14 , ": int" , expectedKind ) ;
126
- assertHintValues ( result2 [ 11 ] , 29 , 15 , ": int" , expectedKind ) ;
115
+ assertHintValues ( result2 , 0 , 16 , 16 , ": int *const" , expectedKind ) ;
116
+ assertHintValues ( result2 , 1 , 17 , 17 , ": const int *const" , expectedKind ) ;
117
+ assertHintValues ( result2 , 2 , 18 , 18 , ": const int *const &" , expectedKind ) ;
118
+ assertHintValues ( result2 , 3 , 19 , 19 , ": const int *const" , expectedKind ) ;
119
+ assertHintValues ( result2 , 4 , 20 , 17 , ": const int" , expectedKind ) ;
120
+ assertHintValues ( result2 , 5 , 21 , 12 , ": const int &" , expectedKind ) ;
121
+ assertHintValues ( result2 , 6 , 22 , 21 , ": const int &" , expectedKind ) ;
122
+ assertHintValues ( result2 , 7 , 23 , 21 , ": const int *" , expectedKind ) ;
123
+ assertHintValues ( result2 , 8 , 24 , 21 , ": int *" , expectedKind ) ;
124
+ assertHintValues ( result2 , 9 , 25 , 21 , ": const int *" , expectedKind ) ;
125
+ assertHintValues ( result2 , 10 , 28 , 14 , ": int" , expectedKind ) ;
126
+ assertHintValues ( result2 , 11 , 29 , 15 , ": int" , expectedKind ) ;
127
127
} ) ;
128
128
129
129
test ( "[Inlay Hints - auto type, show on left]" , async ( ) => {
@@ -141,18 +141,18 @@ suite("[Inlay hints test]", function(): void {
141
141
const result2 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
142
142
assert . strictEqual ( result2 . length , 12 , "Incorrect number of results." ) ;
143
143
const expectedKind = vscode . InlayHintKind . Type ;
144
- assertHintValues ( result2 [ 0 ] , 16 , 15 , "int *const" , expectedKind ) ;
145
- assertHintValues ( result2 [ 1 ] , 17 , 15 , "const int *const" , expectedKind ) ;
146
- assertHintValues ( result2 [ 2 ] , 18 , 16 , "const int *const &" , expectedKind ) ;
147
- assertHintValues ( result2 [ 3 ] , 19 , 17 , "const int *const" , expectedKind ) ;
148
- assertHintValues ( result2 [ 4 ] , 20 , 15 , "const int" , expectedKind ) ;
149
- assertHintValues ( result2 [ 5 ] , 21 , 10 , "const int &" , expectedKind ) ;
150
- assertHintValues ( result2 [ 6 ] , 22 , 19 , "const int &" , expectedKind ) ;
151
- assertHintValues ( result2 [ 7 ] , 23 , 19 , "const int *" , expectedKind ) ;
152
- assertHintValues ( result2 [ 8 ] , 24 , 19 , "int *" , expectedKind ) ;
153
- assertHintValues ( result2 [ 9 ] , 25 , 19 , "const int *" , expectedKind ) ;
154
- assertHintValues ( result2 [ 10 ] , 28 , 9 , "int" , expectedKind ) ;
155
- assertHintValues ( result2 [ 11 ] , 29 , 14 , "int" , expectedKind ) ;
144
+ assertHintValues ( result2 , 0 , 16 , 15 , "int *const" , expectedKind ) ;
145
+ assertHintValues ( result2 , 1 , 17 , 15 , "const int *const" , expectedKind ) ;
146
+ assertHintValues ( result2 , 2 , 18 , 16 , "const int *const &" , expectedKind ) ;
147
+ assertHintValues ( result2 , 3 , 19 , 17 , "const int *const" , expectedKind ) ;
148
+ assertHintValues ( result2 , 4 , 20 , 15 , "const int" , expectedKind ) ;
149
+ assertHintValues ( result2 , 5 , 21 , 10 , "const int &" , expectedKind ) ;
150
+ assertHintValues ( result2 , 6 , 22 , 19 , "const int &" , expectedKind ) ;
151
+ assertHintValues ( result2 , 7 , 23 , 19 , "const int *" , expectedKind ) ;
152
+ assertHintValues ( result2 , 8 , 24 , 19 , "int *" , expectedKind ) ;
153
+ assertHintValues ( result2 , 9 , 25 , 19 , "const int *" , expectedKind ) ;
154
+ assertHintValues ( result2 , 10 , 28 , 9 , "int" , expectedKind ) ;
155
+ assertHintValues ( result2 , 11 , 29 , 14 , "int" , expectedKind ) ;
156
156
} ) ;
157
157
158
158
test ( "[Inlay Hints - parameter names]" , async ( ) => {
@@ -170,22 +170,22 @@ suite("[Inlay hints test]", function(): void {
170
170
const result2 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
171
171
assert . strictEqual ( result2 . length , 16 , "Incorrect number of results." ) ;
172
172
const expectedKind = vscode . InlayHintKind . Parameter ;
173
- assertHintValues ( result2 [ 0 ] , 16 , 15 , "width:" , expectedKind ) ;
174
- assertHintValues ( result2 [ 1 ] , 17 , 15 , "height:" , expectedKind ) ;
175
- assertHintValues ( result2 [ 2 ] , 18 , 16 , "width:" , expectedKind ) ;
176
- assertHintValues ( result2 [ 3 ] , 19 , 17 , "height:" , expectedKind ) ;
177
- assertHintValues ( result2 [ 4 ] , 20 , 15 , "width:" , expectedKind ) ;
178
- assertHintValues ( result2 [ 5 ] , 21 , 10 , "height:" , expectedKind ) ;
179
- assertHintValues ( result2 [ 6 ] , 22 , 19 , "height:" , expectedKind ) ;
180
- assertHintValues ( result2 [ 7 ] , 23 , 19 , "height:" , expectedKind ) ;
181
- assertHintValues ( result2 [ 8 ] , 24 , 19 , "height:" , expectedKind ) ;
182
- assertHintValues ( result2 [ 9 ] , 25 , 19 , "height:" , expectedKind ) ;
183
- assertHintValues ( result2 [ 10 ] , 28 , 9 , "height:" , expectedKind ) ;
184
- assertHintValues ( result2 [ 11 ] , 29 , 14 , "width:" , expectedKind ) ;
185
- assertHintValues ( result2 [ 12 ] , 29 , 14 , "width:" , expectedKind ) ;
186
- assertHintValues ( result2 [ 13 ] , 28 , 9 , "width:" , expectedKind ) ;
187
- assertHintValues ( result2 [ 14 ] , 29 , 14 , "width:" , expectedKind ) ;
188
- assertHintValues ( result2 [ 15 ] , 29 , 14 , "width:" , expectedKind ) ;
173
+ assertHintValues ( result2 , 0 , 41 , 17 , "width:" , expectedKind ) ;
174
+ assertHintValues ( result2 , 1 , 41 , 20 , "height:" , expectedKind ) ;
175
+ assertHintValues ( result2 , 2 , 42 , 17 , "width:" , expectedKind ) ;
176
+ assertHintValues ( result2 , 3 , 43 , 17 , "height:" , expectedKind ) ;
177
+ assertHintValues ( result2 , 4 , 45 , 17 , "width:" , expectedKind ) ;
178
+ assertHintValues ( result2 , 5 , 46 , 17 , "height:" , expectedKind ) ;
179
+ assertHintValues ( result2 , 6 , 50 , 20 , "height:" , expectedKind ) ;
180
+ assertHintValues ( result2 , 7 , 51 , 26 , "height:" , expectedKind ) ;
181
+ assertHintValues ( result2 , 8 , 52 , 29 , "height:" , expectedKind ) ;
182
+ assertHintValues ( result2 , 9 , 54 , 13 , "height:" , expectedKind ) ;
183
+ assertHintValues ( result2 , 10 , 57 , 13 , "height:" , expectedKind ) ;
184
+ assertHintValues ( result2 , 11 , 61 , 13 , "width:" , expectedKind ) ;
185
+ assertHintValues ( result2 , 12 , 62 , 13 , "width:" , expectedKind ) ;
186
+ assertHintValues ( result2 , 13 , 63 , 16 , "width:" , expectedKind ) ;
187
+ assertHintValues ( result2 , 14 , 64 , 13 , "width:" , expectedKind ) ;
188
+ assertHintValues ( result2 , 15 , 67 , 13 , "width:" , expectedKind ) ;
189
189
} ) ;
190
190
191
191
test ( "[Inlay Hints - parameter hideLeadingUnderscores]" , async ( ) => {
@@ -197,19 +197,19 @@ suite("[Inlay hints test]", function(): void {
197
197
const result1 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
198
198
assert . strictEqual ( result1 . length , 4 , "Incorrect number of results." ) ;
199
199
const expectedKind = vscode . InlayHintKind . Parameter ;
200
- assertHintValues ( result1 [ 0 ] , 35 , 16 , "___x:" , expectedKind ) ;
201
- assertHintValues ( result1 [ 1 ] , 35 , 19 , "__y:" , expectedKind ) ;
202
- assertHintValues ( result1 [ 2 ] , 35 , 22 , "_z:" , expectedKind ) ;
203
- assertHintValues ( result1 [ 3 ] , 35 , 25 , "a:" , expectedKind ) ;
200
+ assertHintValues ( result1 , 0 , 35 , 16 , "___x:" , expectedKind ) ;
201
+ assertHintValues ( result1 , 1 , 35 , 19 , "__y:" , expectedKind ) ;
202
+ assertHintValues ( result1 , 2 , 35 , 22 , "_z:" , expectedKind ) ;
203
+ assertHintValues ( result1 , 3 , 35 , 25 , "a:" , expectedKind ) ;
204
204
205
205
await changeInlayHintSetting ( parameterNamesHideUnderScore , enabled ) ;
206
206
await getIntelliSenseStatus ;
207
207
const result2 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
208
208
assert . strictEqual ( result2 . length , 4 , "Incorrect number of results." ) ;
209
- assertHintValues ( result2 [ 0 ] , 35 , 16 , "x:" , expectedKind ) ;
210
- assertHintValues ( result2 [ 1 ] , 35 , 19 , "y:" , expectedKind ) ;
211
- assertHintValues ( result2 [ 2 ] , 35 , 22 , "z:" , expectedKind ) ;
212
- assertHintValues ( result2 [ 3 ] , 35 , 25 , "a:" , expectedKind ) ;
209
+ assertHintValues ( result2 , 0 , 35 , 16 , "x:" , expectedKind ) ;
210
+ assertHintValues ( result2 , 1 , 35 , 19 , "y:" , expectedKind ) ;
211
+ assertHintValues ( result2 , 2 , 35 , 22 , "z:" , expectedKind ) ;
212
+ assertHintValues ( result2 , 3 , 35 , 25 , "a:" , expectedKind ) ;
213
213
} ) ;
214
214
215
215
test ( "[Inlay Hints - reference operator]" , async ( ) => {
@@ -228,22 +228,22 @@ suite("[Inlay hints test]", function(): void {
228
228
assert . strictEqual ( result2 . length , 16 , "Incorrect number of results." ) ;
229
229
const expectedKind = vscode . InlayHintKind . Parameter ;
230
230
const refOp : string = "&:" ;
231
- assertHintValues ( result2 [ 0 ] , 87 , 9 , refOp , expectedKind ) ;
232
- assertHintValues ( result2 [ 1 ] , 87 , 12 , refOp , expectedKind ) ;
233
- assertHintValues ( result2 [ 2 ] , 88 , 9 , refOp , expectedKind ) ;
234
- assertHintValues ( result2 [ 3 ] , 88 , 22 , refOp , expectedKind ) ;
235
- assertHintValues ( result2 [ 4 ] , 89 , 9 , refOp , expectedKind ) ;
236
- assertHintValues ( result2 [ 5 ] , 90 , 9 , refOp , expectedKind ) ;
237
- assertHintValues ( result2 [ 6 ] , 93 , 9 , refOp , expectedKind ) ;
238
- assertHintValues ( result2 [ 7 ] , 94 , 9 , refOp , expectedKind ) ;
239
- assertHintValues ( result2 [ 8 ] , 97 , 9 , refOp , expectedKind ) ;
240
- assertHintValues ( result2 [ 9 ] , 97 , 12 , refOp , expectedKind ) ;
241
- assertHintValues ( result2 [ 10 ] , 98 , 9 , refOp , expectedKind ) ;
242
- assertHintValues ( result2 [ 11 ] , 98 , 12 , refOp , expectedKind ) ;
243
- assertHintValues ( result2 [ 12 ] , 99 , 9 , refOp , expectedKind ) ;
244
- assertHintValues ( result2 [ 13 ] , 100 , 9 , refOp , expectedKind ) ;
245
- assertHintValues ( result2 [ 14 ] , 103 , 9 , refOp , expectedKind ) ;
246
- assertHintValues ( result2 [ 15 ] , 104 , 9 , refOp , expectedKind ) ;
231
+ assertHintValues ( result2 , 0 , 87 , 9 , refOp , expectedKind ) ;
232
+ assertHintValues ( result2 , 1 , 87 , 12 , refOp , expectedKind ) ;
233
+ assertHintValues ( result2 , 2 , 88 , 9 , refOp , expectedKind ) ;
234
+ assertHintValues ( result2 , 3 , 88 , 22 , refOp , expectedKind ) ;
235
+ assertHintValues ( result2 , 4 , 89 , 9 , refOp , expectedKind ) ;
236
+ assertHintValues ( result2 , 5 , 90 , 9 , refOp , expectedKind ) ;
237
+ assertHintValues ( result2 , 6 , 93 , 9 , refOp , expectedKind ) ;
238
+ assertHintValues ( result2 , 7 , 94 , 9 , refOp , expectedKind ) ;
239
+ assertHintValues ( result2 , 8 , 97 , 9 , refOp , expectedKind ) ;
240
+ assertHintValues ( result2 , 9 , 97 , 12 , refOp , expectedKind ) ;
241
+ assertHintValues ( result2 , 10 , 98 , 9 , refOp , expectedKind ) ;
242
+ assertHintValues ( result2 , 11 , 98 , 12 , refOp , expectedKind ) ;
243
+ assertHintValues ( result2 , 12 , 99 , 9 , refOp , expectedKind ) ;
244
+ assertHintValues ( result2 , 13 , 100 , 9 , refOp , expectedKind ) ;
245
+ assertHintValues ( result2 , 14 , 103 , 9 , refOp , expectedKind ) ;
246
+ assertHintValues ( result2 , 15 , 104 , 9 , refOp , expectedKind ) ;
247
247
} ) ;
248
248
249
249
test ( "[Inlay Hints - reference operator and param name, show space]" , async ( ) => {
@@ -258,35 +258,35 @@ suite("[Inlay hints test]", function(): void {
258
258
const result1 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
259
259
assert . strictEqual ( result1 . length , 12 , "Incorrect number of results." ) ;
260
260
const expectedKind = vscode . InlayHintKind . Parameter ;
261
- assertHintValues ( result1 [ 0 ] , 87 , 9 , "&first:" , expectedKind ) ;
262
- assertHintValues ( result1 [ 1 ] , 87 , 12 , "&last:" , expectedKind ) ;
263
- assertHintValues ( result1 [ 2 ] , 87 , 15 , "flag:" , expectedKind ) ;
264
- assertHintValues ( result1 [ 3 ] , 88 , 9 , "&first:" , expectedKind ) ;
265
- assertHintValues ( result1 [ 4 ] , 88 , 22 , "&last:" , expectedKind ) ;
266
- assertHintValues ( result1 [ 5 ] , 88 , 25 , "flag:" , expectedKind ) ;
267
- assertHintValues ( result1 [ 6 ] , 89 , 9 , "&first:" , expectedKind ) ;
268
- assertHintValues ( result1 [ 7 ] , 90 , 9 , "&last:" , expectedKind ) ;
269
- assertHintValues ( result1 [ 8 ] , 91 , 9 , "flag:" , expectedKind ) ;
270
- assertHintValues ( result1 [ 9 ] , 93 , 9 , "&first:" , expectedKind ) ;
271
- assertHintValues ( result1 [ 10 ] , 94 , 9 , "&last:" , expectedKind ) ;
272
- assertHintValues ( result1 [ 11 ] , 95 , 9 , "flag:" , expectedKind ) ;
261
+ assertHintValues ( result1 , 0 , 87 , 9 , "&first:" , expectedKind ) ;
262
+ assertHintValues ( result1 , 1 , 87 , 12 , "&last:" , expectedKind ) ;
263
+ assertHintValues ( result1 , 2 , 87 , 15 , "flag:" , expectedKind ) ;
264
+ assertHintValues ( result1 , 3 , 88 , 9 , "&first:" , expectedKind ) ;
265
+ assertHintValues ( result1 , 4 , 88 , 22 , "&last:" , expectedKind ) ;
266
+ assertHintValues ( result1 , 5 , 88 , 25 , "flag:" , expectedKind ) ;
267
+ assertHintValues ( result1 , 6 , 89 , 9 , "&first:" , expectedKind ) ;
268
+ assertHintValues ( result1 , 7 , 90 , 9 , "&last:" , expectedKind ) ;
269
+ assertHintValues ( result1 , 8 , 91 , 9 , "flag:" , expectedKind ) ;
270
+ assertHintValues ( result1 , 9 , 93 , 9 , "&first:" , expectedKind ) ;
271
+ assertHintValues ( result1 , 10 , 94 , 9 , "&last:" , expectedKind ) ;
272
+ assertHintValues ( result1 , 11 , 95 , 9 , "flag:" , expectedKind ) ;
273
273
274
274
await changeInlayHintSetting ( referenceOperatorShowSpace , enabled ) ;
275
275
await getIntelliSenseStatus ;
276
276
const result2 = await vscode . commands . executeCommand < vscode . InlayHint [ ] > ( 'vscode.executeInlayHintProvider' , fileUri , range ) ;
277
277
assert . strictEqual ( result2 . length , 12 , "Incorrect number of results." ) ;
278
- assertHintValues ( result2 [ 0 ] , 87 , 9 , "& first:" , expectedKind ) ;
279
- assertHintValues ( result2 [ 1 ] , 87 , 12 , "& last:" , expectedKind ) ;
280
- assertHintValues ( result2 [ 2 ] , 87 , 15 , "flag:" , expectedKind ) ;
281
- assertHintValues ( result2 [ 3 ] , 88 , 9 , "& first:" , expectedKind ) ;
282
- assertHintValues ( result2 [ 4 ] , 88 , 22 , "& last:" , expectedKind ) ;
283
- assertHintValues ( result2 [ 5 ] , 88 , 25 , "flag:" , expectedKind ) ;
284
- assertHintValues ( result2 [ 6 ] , 89 , 9 , "& first:" , expectedKind ) ;
285
- assertHintValues ( result2 [ 7 ] , 90 , 9 , "& last:" , expectedKind ) ;
286
- assertHintValues ( result2 [ 8 ] , 91 , 9 , "flag:" , expectedKind ) ;
287
- assertHintValues ( result2 [ 9 ] , 93 , 9 , "& first:" , expectedKind ) ;
288
- assertHintValues ( result2 [ 10 ] , 94 , 9 , "& last:" , expectedKind ) ;
289
- assertHintValues ( result2 [ 11 ] , 95 , 9 , "flag:" , expectedKind ) ;
278
+ assertHintValues ( result2 , 0 , 87 , 9 , "& first:" , expectedKind ) ;
279
+ assertHintValues ( result2 , 1 , 87 , 12 , "& last:" , expectedKind ) ;
280
+ assertHintValues ( result2 , 2 , 87 , 15 , "flag:" , expectedKind ) ;
281
+ assertHintValues ( result2 , 3 , 88 , 9 , "& first:" , expectedKind ) ;
282
+ assertHintValues ( result2 , 4 , 88 , 22 , "& last:" , expectedKind ) ;
283
+ assertHintValues ( result2 , 5 , 88 , 25 , "flag:" , expectedKind ) ;
284
+ assertHintValues ( result2 , 6 , 89 , 9 , "& first:" , expectedKind ) ;
285
+ assertHintValues ( result2 , 7 , 90 , 9 , "& last:" , expectedKind ) ;
286
+ assertHintValues ( result2 , 8 , 91 , 9 , "flag:" , expectedKind ) ;
287
+ assertHintValues ( result2 , 9 , 93 , 9 , "& first:" , expectedKind ) ;
288
+ assertHintValues ( result2 , 10 , 94 , 9 , "& last:" , expectedKind ) ;
289
+ assertHintValues ( result2 , 11 , 95 , 9 , "flag:" , expectedKind ) ;
290
290
} ) ;
291
291
292
292
async function changeInlayHintSetting ( inlayHintSetting : string , valueNew : any ) : Promise < void > {
@@ -299,14 +299,15 @@ suite("[Inlay hints test]", function(): void {
299
299
}
300
300
301
301
function assertHintValues (
302
- actualHint : any ,
302
+ actualHintResults : any ,
303
+ resultNumber : number ,
303
304
expectedLine : number ,
304
305
expectedCharacter : number ,
305
306
expectedLabel : string ,
306
307
expectedKind : any ) : void {
307
- assert . strictEqual ( actualHint . position . line , expectedLine , " Incorrect line." ) ;
308
- assert . strictEqual ( actualHint . position . character , expectedCharacter , " Incorrect character." ) ;
309
- assert . strictEqual ( actualHint . label , expectedLabel , " Incorrect label." ) ;
310
- assert . strictEqual ( actualHint . kind , expectedKind , " Incorrect kind." ) ;
308
+ assert . strictEqual ( actualHintResults [ resultNumber ] . position . line , expectedLine , ` Incorrect line for result ${ resultNumber } .` ) ;
309
+ assert . strictEqual ( actualHintResults [ resultNumber ] . position . character , expectedCharacter , ` Incorrect character for result ${ resultNumber } .` ) ;
310
+ assert . strictEqual ( actualHintResults [ resultNumber ] . label , expectedLabel , ` Incorrect label for result ${ resultNumber } .` ) ;
311
+ assert . strictEqual ( actualHintResults [ resultNumber ] . kind , expectedKind , ` Incorrect kind for result ${ resultNumber } .` ) ;
311
312
}
312
313
} ) ;
0 commit comments