1
1
import { test } from 'vitest'
2
2
import { init } from '../common'
3
- import { HoverRequest } from 'vscode-languageserver'
3
+ import { CompletionRequest , HoverRequest } from 'vscode-languageserver'
4
4
5
5
test ( 'Unknown languages do not provide completions' , async ( { expect } ) => {
6
6
let c = await init ( 'basic' )
@@ -16,6 +16,14 @@ test('Unknown languages do not provide completions', async ({ expect }) => {
16
16
} )
17
17
18
18
expect ( hover ) . toEqual ( null )
19
+
20
+ let completion = await c . sendRequest ( CompletionRequest . type , {
21
+ textDocument,
22
+ position : { line : 0 , character : 13 } ,
23
+ context : { triggerKind : 1 } ,
24
+ } )
25
+
26
+ expect ( completion ) . toBe ( null )
19
27
} )
20
28
21
29
test ( 'Custom languages may be specified via init options (deprecated)' , async ( { expect } ) => {
@@ -43,6 +51,14 @@ test('Custom languages may be specified via init options (deprecated)', async ({
43
51
} ,
44
52
range : { start : { line : 0 , character : 12 } , end : { line : 0 , character : 21 } } ,
45
53
} )
54
+
55
+ let completion = await c . sendRequest ( CompletionRequest . type , {
56
+ textDocument,
57
+ position : { line : 0 , character : 13 } ,
58
+ context : { triggerKind : 1 } ,
59
+ } )
60
+
61
+ expect ( completion . items . length ) . toBe ( 11509 )
46
62
} )
47
63
48
64
test ( 'Custom languages may be specified via settings' , async ( { expect } ) => {
@@ -74,6 +90,14 @@ test('Custom languages may be specified via settings', async ({ expect }) => {
74
90
} ,
75
91
range : { start : { line : 0 , character : 12 } , end : { line : 0 , character : 21 } } ,
76
92
} )
93
+
94
+ let completion = await c . sendRequest ( CompletionRequest . type , {
95
+ textDocument,
96
+ position : { line : 0 , character : 13 } ,
97
+ context : { triggerKind : 1 } ,
98
+ } )
99
+
100
+ expect ( completion . items . length ) . toBe ( 11509 )
77
101
} )
78
102
79
103
test ( 'Custom languages are merged from init options and settings' , async ( { expect } ) => {
@@ -101,6 +125,12 @@ test('Custom languages are merged from init options and settings', async ({ expe
101
125
position : { line : 0 , character : 13 } ,
102
126
} )
103
127
128
+ let completion = await c . sendRequest ( CompletionRequest . type , {
129
+ textDocument,
130
+ position : { line : 0 , character : 13 } ,
131
+ context : { triggerKind : 1 } ,
132
+ } )
133
+
104
134
textDocument = await c . openDocument ( {
105
135
lang : 'other-lang' ,
106
136
text : '<div class="bg-[#000]">' ,
@@ -111,6 +141,12 @@ test('Custom languages are merged from init options and settings', async ({ expe
111
141
position : { line : 0 , character : 13 } ,
112
142
} )
113
143
144
+ let completion2 = await c . sendRequest ( CompletionRequest . type , {
145
+ textDocument,
146
+ position : { line : 0 , character : 13 } ,
147
+ context : { triggerKind : 1 } ,
148
+ } )
149
+
114
150
expect ( hover ) . toEqual ( {
115
151
contents : {
116
152
language : 'css' ,
@@ -128,6 +164,9 @@ test('Custom languages are merged from init options and settings', async ({ expe
128
164
} ,
129
165
range : { start : { line : 0 , character : 12 } , end : { line : 0 , character : 21 } } ,
130
166
} )
167
+
168
+ expect ( completion . items . length ) . toBe ( 11509 )
169
+ expect ( completion2 . items . length ) . toBe ( 11509 )
131
170
} )
132
171
133
172
test ( 'Language mappings from settings take precedence' , async ( { expect } ) => {
@@ -163,4 +202,12 @@ test('Language mappings from settings take precedence', async ({ expect }) => {
163
202
} ,
164
203
range : { start : { line : 0 , character : 12 } , end : { line : 0 , character : 21 } } ,
165
204
} )
205
+
206
+ let completion = await c . sendRequest ( CompletionRequest . type , {
207
+ textDocument,
208
+ position : { line : 0 , character : 13 } ,
209
+ context : { triggerKind : 1 } ,
210
+ } )
211
+
212
+ expect ( completion . items . length ) . toBe ( 11509 )
166
213
} )
0 commit comments