@@ -983,7 +983,7 @@ defineTest({
983
983
} )
984
984
985
985
defineTest ( {
986
- name : 'Completions for outline and border utilities have simplified details' ,
986
+ name : 'Completions for several utilities have simplified details' ,
987
987
fs : {
988
988
'app.css' : css `
989
989
@import 'tailwindcss';
@@ -993,24 +993,30 @@ defineTest({
993
993
handle : async ( { client } ) => {
994
994
let document = await client . open ( {
995
995
lang : 'html' ,
996
- text : html `< div class ="border-0 outline-0 "> </ div > ` ,
996
+ text : html `< div class =""> </ div > ` ,
997
997
} )
998
998
999
- // <div class="border-0 outline-0"></div>
1000
- // ^
1001
- let completionA = await document . completions ( { line : 0 , character : 20 } )
999
+ // <div class=""></div>
1000
+ // ^
1001
+ let list = await document . completions ( { line : 0 , character : 12 } )
1002
+ let items = list ?. items ?? [ ]
1002
1003
1003
- // <div class="border-0 outline-0"></div>
1004
- // ^
1005
- let completionB = await document . completions ( { line : 0 , character : 30 } )
1004
+ let map = {
1005
+ 'border-0' : 'border-width: 0px;' ,
1006
+ 'outline-0' : 'outline-width: 0px;' ,
1007
+ }
1008
+
1009
+ let requests = await Promise . all (
1010
+ Object . keys ( map ) . map ( async ( label ) => {
1011
+ let item = items . find ( ( item ) => item . label === label )
1012
+ if ( ! item ) throw new Error ( `Item not found for label: ${ label } ` )
1006
1013
1007
- let border = completionA ?. items . find ( ( item ) => item . label === 'border-0' )
1008
- let outline = completionB ?. items . find ( ( item ) => item . label === 'outline-0' )
1014
+ let resolved = await client . conn . sendRequest ( 'completionItem/resolve' , item )
1009
1015
1010
- let borderResolved = await client . conn . sendRequest ( 'completionItem/resolve' , border )
1011
- let outlineResolved = await client . conn . sendRequest ( 'completionItem/resolve' , outline )
1016
+ return [ label , resolved . detail ]
1017
+ } ) ,
1018
+ )
1012
1019
1013
- expect ( borderResolved ) . toMatchObject ( { detail : 'border-width: 0px;' } )
1014
- expect ( outlineResolved ) . toMatchObject ( { detail : 'outline-width: 0px;' } )
1020
+ expect ( Object . fromEntries ( requests ) ) . toEqual ( map )
1015
1021
} ,
1016
1022
} )
0 commit comments