diff --git a/packages/mongodb-ts-autocomplete/src/autocompleter.spec.ts b/packages/mongodb-ts-autocomplete/src/autocompleter.spec.ts index ea1f6417..68eb9fe7 100644 --- a/packages/mongodb-ts-autocomplete/src/autocompleter.spec.ts +++ b/packages/mongodb-ts-autocomplete/src/autocompleter.spec.ts @@ -84,7 +84,7 @@ describe('MongoDBAutocompleter', function () { databasesForConnection: () => Promise.resolve(['db1', 'db2', databaseName]), collectionsForDatabase: () => - Promise.resolve(['foo', 'bar', 'baz', collectionName]), + Promise.resolve(['foo', 'bar', 'baz', collectionName, 'one.two']), schemaInformationForCollection: async ( connectionId: string, databaseName: string, @@ -217,6 +217,19 @@ describe('MongoDBAutocompleter', function () { } }); + it('completes a collection name with a dot in it', async function () { + for (let i = 0; i < 2; i++) { + const completions = await autocompleter.autocomplete('db.on'); + expect(completions).to.deep.equal([ + { + kind: 'property', + name: 'one.two', + result: 'db.one.two', + }, + ]); + } + }); + it('completes a collection method', async function () { for (let i = 0; i < 2; i++) { const completions = await autocompleter.autocomplete('db.foo.fi'); diff --git a/packages/ts-autocomplete/src/index.ts b/packages/ts-autocomplete/src/index.ts index f0274036..d395cba4 100644 --- a/packages/ts-autocomplete/src/index.ts +++ b/packages/ts-autocomplete/src/index.ts @@ -255,6 +255,8 @@ export default class Autocompleter { code.length, { allowIncompleteCompletions: true, + // https://github.com/microsoft/TypeScript/blob/833a8d492c728d606454865e8c0fee84842f9f10/tests/baselines/reference/api/typescript.d.ts#L8311-L8315 + includeCompletionsWithInsertText: true, }, );