Skip to content

Commit 28b5195

Browse files
authored
Merge pull request #192007 from microsoft/joh/wandering-jay
fix #187779
2 parents d697093 + 6db3388 commit 28b5195

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

src/vs/editor/contrib/suggest/test/browser/suggestController.test.ts

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace
3232
import { LanguageFeaturesService } from 'vs/editor/common/services/languageFeaturesService';
3333
import { ILanguageFeaturesService } from 'vs/editor/common/services/languageFeatures';
3434
import { IEnvironmentService } from 'vs/platform/environment/common/environment';
35+
import { DeleteLinesAction } from 'vs/editor/contrib/linesOperations/browser/linesOperations';
3536

3637
suite('SuggestController', function () {
3738

@@ -579,4 +580,38 @@ suite('SuggestController', function () {
579580
controller.acceptSelectedSuggestion(false, false);
580581
assert.strictEqual(editor.getValue(), 'for');
581582
});
583+
584+
test.skip('Suggest widget gets orphaned in editor #187779', async function () {
585+
586+
disposables.add(languageFeaturesService.completionProvider.register({ scheme: 'test-ctrl' }, {
587+
_debugDisplayName: 'test',
588+
provideCompletionItems(doc, pos) {
589+
590+
const word = doc.getLineContent(pos.lineNumber);
591+
const range = new Range(pos.lineNumber, 1, pos.lineNumber, pos.column);
592+
593+
return {
594+
suggestions: [{
595+
kind: CompletionItemKind.Text,
596+
label: word,
597+
insertText: word,
598+
range
599+
}]
600+
};
601+
}
602+
}));
603+
604+
editor.setValue(`console.log(example.)\nconsole.log(EXAMPLE.not)`);
605+
editor.setSelection(new Selection(1, 21, 1, 21));
606+
607+
const p1 = Event.toPromise(controller.model.onDidSuggest);
608+
controller.triggerSuggest();
609+
610+
await p1;
611+
612+
const p2 = Event.toPromise(controller.model.onDidCancel);
613+
new DeleteLinesAction().run(null!, editor);
614+
615+
await p2;
616+
});
582617
});

0 commit comments

Comments
 (0)