@@ -483,6 +483,27 @@ describe('AutoCompleteAdapter', () => {
483
483
result = ( await autoCompleteAdapter . getSuggestions ( server , customRequest ) ) [ 0 ] ;
484
484
expect ( result . replacementPrefix ) . equals ( '#al' ) ;
485
485
} ) ;
486
+
487
+ it ( 'does not include the triggerChar in replacementPrefix' , async ( ) => {
488
+ const customRequest = createRequest ( { prefix : '.' , position : new Point ( 0 , 4 ) } ) ;
489
+ customRequest . editor . setText ( 'foo.' ) ;
490
+ server . capabilities . completionProvider ! . triggerCharacters = [ '.' ] ;
491
+ sinon . stub ( server . connection , 'completion' ) . resolves ( [
492
+ createCompletionItem ( 'bar' ) ,
493
+ ] ) ;
494
+ let result = ( await autoCompleteAdapter . getSuggestions ( server , customRequest ) ) [ 0 ] ;
495
+ expect ( result . replacementPrefix ) . equals ( '' ) ;
496
+ customRequest . editor . setTextInBufferRange ( [ [ 0 , 4 ] , [ 0 , 4 ] ] , 'b' ) ;
497
+ customRequest . prefix = 'b' ;
498
+ customRequest . bufferPosition = new Point ( 0 , 5 ) ;
499
+ result = ( await autoCompleteAdapter . getSuggestions ( server , customRequest ) ) [ 0 ] ;
500
+ expect ( result . replacementPrefix ) . equals ( 'b' ) ;
501
+ customRequest . editor . setTextInBufferRange ( [ [ 0 , 5 ] , [ 0 , 5 ] ] , 'a' ) ;
502
+ customRequest . prefix = 'ba' ;
503
+ customRequest . bufferPosition = new Point ( 0 , 6 ) ;
504
+ result = ( await autoCompleteAdapter . getSuggestions ( server , customRequest ) ) [ 0 ] ;
505
+ expect ( result . replacementPrefix ) . equals ( 'ba' ) ;
506
+ } ) ;
486
507
} ) ;
487
508
488
509
describe ( 'completionKindToSuggestionType' , ( ) => {
0 commit comments