@zzzen/pyright-internal 1.2.0-dev.20260614 → 1.2.0-dev.20260628
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analyzer/analysis.js +17 -7
- package/dist/analyzer/analysis.js.map +1 -1
- package/dist/analyzer/analyzerNodeInfo.d.ts +11 -0
- package/dist/analyzer/binder.js +31 -8
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +23 -8
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +6 -0
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/dataClasses.js +19 -8
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +1 -0
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/docStringUtils.d.ts +1 -0
- package/dist/analyzer/docStringUtils.js +78 -0
- package/dist/analyzer/docStringUtils.js.map +1 -1
- package/dist/analyzer/importResolver.d.ts +1 -0
- package/dist/analyzer/importResolver.js +107 -12
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/importStatementUtils.js +36 -8
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/namedTuples.js +17 -7
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/parseTreeCleaner.js +17 -7
- package/dist/analyzer/parseTreeCleaner.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.js +27 -9
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/parseTreeWalker.js +17 -7
- package/dist/analyzer/parseTreeWalker.js.map +1 -1
- package/dist/analyzer/patternMatching.js +44 -0
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +1 -0
- package/dist/analyzer/program.js +44 -8
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/pythonPathUtils.js +34 -8
- package/dist/analyzer/pythonPathUtils.js.map +1 -1
- package/dist/analyzer/service.js +43 -11
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceEnumerator.js +6 -0
- package/dist/analyzer/sourceEnumerator.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +1 -0
- package/dist/analyzer/sourceFile.js +25 -7
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/sourceMapper.d.ts +11 -1
- package/dist/analyzer/sourceMapper.js +220 -19
- package/dist/analyzer/sourceMapper.js.map +1 -1
- package/dist/analyzer/staticExpressions.js +91 -19
- package/dist/analyzer/staticExpressions.js.map +1 -1
- package/dist/analyzer/tracePrinter.js +17 -7
- package/dist/analyzer/tracePrinter.js.map +1 -1
- package/dist/analyzer/typeCacheUtils.js +17 -7
- package/dist/analyzer/typeCacheUtils.js.map +1 -1
- package/dist/analyzer/typeDocStringUtils.d.ts +8 -0
- package/dist/analyzer/typeDocStringUtils.js +101 -27
- package/dist/analyzer/typeDocStringUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +122 -89
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -0
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeGuards.js +71 -13
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.js +50 -8
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeStubWriter.js +17 -7
- package/dist/analyzer/typeStubWriter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +1 -0
- package/dist/analyzer/typeUtils.js +9 -0
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typeWalker.js +1 -1
- package/dist/analyzer/typeWalker.js.map +1 -1
- package/dist/analyzer/typedDicts.js +19 -9
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/typeshedInfoProvider.js +17 -7
- package/dist/analyzer/typeshedInfoProvider.js.map +1 -1
- package/dist/backgroundAnalysisBase.js +17 -7
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.js +17 -7
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/common/chokidarFileWatcherProvider.js +17 -7
- package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
- package/dist/common/configOptions.js +17 -7
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/console.js +17 -7
- package/dist/common/console.js.map +1 -1
- package/dist/common/docStringService.d.ts +2 -0
- package/dist/common/docStringService.js +5 -1
- package/dist/common/docStringService.js.map +1 -1
- package/dist/common/envVarUtils.js +17 -7
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/extensibility.d.ts +2 -0
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/fileBasedCancellationUtils.js +17 -7
- package/dist/common/fileBasedCancellationUtils.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +4 -2
- package/dist/common/fullAccessHost.js +69 -16
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +33 -2
- package/dist/common/host.js +4 -1
- package/dist/common/host.js.map +1 -1
- package/dist/common/languageInfoUtils.js +12 -12
- package/dist/common/memUtils.js +18 -7
- package/dist/common/memUtils.js.map +1 -1
- package/dist/common/pathUtils.js +17 -7
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/positionUtils.js +19 -0
- package/dist/common/positionUtils.js.map +1 -1
- package/dist/common/processUtils.js +17 -7
- package/dist/common/processUtils.js.map +1 -1
- package/dist/common/realFileSystem.js +19 -19
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProvider.js +17 -7
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/common/streamUtils.d.ts +1 -1
- package/dist/common/textEditTracker.d.ts +1 -0
- package/dist/common/textEditTracker.js +31 -12
- package/dist/common/textEditTracker.js.map +1 -1
- package/dist/common/uri/fileUri.d.ts +1 -0
- package/dist/common/uri/fileUri.js +20 -0
- package/dist/common/uri/fileUri.js.map +1 -1
- package/dist/common/uri/memoization.js +5 -1
- package/dist/common/uri/memoization.js.map +1 -1
- package/dist/common/uri/uriMap.d.ts +4 -4
- package/dist/common/uri/uriMap.js +1 -0
- package/dist/common/uri/uriMap.js.map +1 -1
- package/dist/common/uri/uriUtils.d.ts +2 -0
- package/dist/common/uri/uriUtils.js +22 -0
- package/dist/common/uri/uriUtils.js.map +1 -1
- package/dist/common/workspaceEditUtils.d.ts +1 -0
- package/dist/common/workspaceEditUtils.js +10 -0
- package/dist/common/workspaceEditUtils.js.map +1 -1
- package/dist/languageServerBase.js +19 -4
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/autoImporter.js +17 -7
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js +17 -7
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +11 -2
- package/dist/languageService/completionProvider.js +319 -65
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +18 -0
- package/dist/languageService/completionProviderUtils.js +42 -0
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/definitionProvider.d.ts +1 -1
- package/dist/languageService/definitionProvider.js +69 -10
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentHighlightProvider.js +17 -7
- package/dist/languageService/documentHighlightProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.d.ts +18 -0
- package/dist/languageService/documentSymbolCollector.js +102 -15
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/hoverProvider.d.ts +1 -1
- package/dist/languageService/hoverProvider.js +98 -23
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/importStatementCandidates.d.ts +16 -0
- package/dist/languageService/importStatementCandidates.js +100 -0
- package/dist/languageService/importStatementCandidates.js.map +1 -0
- package/dist/languageService/referencesProvider.d.ts +16 -9
- package/dist/languageService/referencesProvider.js +205 -39
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/renameProvider.d.ts +7 -2
- package/dist/languageService/renameProvider.js +45 -17
- package/dist/languageService/renameProvider.js.map +1 -1
- package/dist/languageService/signatureHelpProvider.js +54 -16
- package/dist/languageService/signatureHelpProvider.js.map +1 -1
- package/dist/languageService/symbolIndexer.js +17 -7
- package/dist/languageService/symbolIndexer.js.map +1 -1
- package/dist/languageService/tooltipUtils.d.ts +11 -0
- package/dist/languageService/tooltipUtils.js +67 -33
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/languageService/workspaceSymbolProvider.js +17 -7
- package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +8 -0
- package/dist/localization/localize.js +6 -0
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +5 -0
- package/dist/parser/characters.js +17 -7
- package/dist/parser/characters.js.map +1 -1
- package/dist/parser/parseNodes.d.ts +4 -0
- package/dist/parser/parseNodes.js.map +1 -1
- package/dist/parser/parser.d.ts +1 -0
- package/dist/parser/parser.js +91 -38
- package/dist/parser/parser.js.map +1 -1
- package/dist/parser/stringTokenUtils.js +23 -7
- package/dist/parser/stringTokenUtils.js.map +1 -1
- package/dist/parser/tokenizer.js +16 -15
- package/dist/parser/tokenizer.js.map +1 -1
- package/dist/parser/tokenizerTypes.d.ts +15 -14
- package/dist/parser/tokenizerTypes.js +22 -15
- package/dist/parser/tokenizerTypes.js.map +1 -1
- package/dist/pyright.js +17 -7
- package/dist/pyright.js.map +1 -1
- package/dist/readonlyAugmentedFileSystem.js +13 -6
- package/dist/readonlyAugmentedFileSystem.js.map +1 -1
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/tests/benchmarks/parserBenchmark.test.js +17 -7
- package/dist/tests/benchmarks/parserBenchmark.test.js.map +1 -1
- package/dist/tests/benchmarks/tokenizerBenchmark.test.js +17 -7
- package/dist/tests/benchmarks/tokenizerBenchmark.test.js.map +1 -1
- package/dist/tests/chainedSourceFiles.test.js +17 -7
- package/dist/tests/chainedSourceFiles.test.js.map +1 -1
- package/dist/tests/checker.test.js +21 -7
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/collectionUtils.test.js +17 -7
- package/dist/tests/collectionUtils.test.js.map +1 -1
- package/dist/tests/common.test.js +17 -7
- package/dist/tests/common.test.js.map +1 -1
- package/dist/tests/completionProviderUtils.test.d.ts +1 -0
- package/dist/tests/completionProviderUtils.test.js +56 -0
- package/dist/tests/completionProviderUtils.test.js.map +1 -0
- package/dist/tests/completions.test.js +118 -9
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/config.test.js +69 -0
- package/dist/tests/config.test.js.map +1 -1
- package/dist/tests/debug.test.js +17 -7
- package/dist/tests/debug.test.js.map +1 -1
- package/dist/tests/deferred.test.js +18 -8
- package/dist/tests/deferred.test.js.map +1 -1
- package/dist/tests/diagnosticOverrides.test.js +17 -7
- package/dist/tests/diagnosticOverrides.test.js.map +1 -1
- package/dist/tests/diagnostics.test.js +35 -0
- package/dist/tests/diagnostics.test.js.map +1 -1
- package/dist/tests/docStringReturnExtraction.test.d.ts +1 -0
- package/dist/tests/docStringReturnExtraction.test.js +125 -0
- package/dist/tests/docStringReturnExtraction.test.js.map +1 -0
- package/dist/tests/envVarUtils.test.js +17 -7
- package/dist/tests/envVarUtils.test.js.map +1 -1
- package/dist/tests/filesystem.test.js +17 -7
- package/dist/tests/filesystem.test.js.map +1 -1
- package/dist/tests/fourSlashParser.test.js +17 -7
- package/dist/tests/fourSlashParser.test.js.map +1 -1
- package/dist/tests/fourSlashRunner.test.js +17 -7
- package/dist/tests/fourSlashRunner.test.js.map +1 -1
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.js +35 -0
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.js +86 -0
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js +20 -0
- package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js.map +1 -1
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.js +122 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.js.map +1 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.js +61 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.nativeSubmodule.fourslash.js.map +1 -0
- package/dist/tests/fourslash/signature.complicated.fourslash.js +1 -5
- package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.posonly.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/signature.posonly.fourslash.js +58 -0
- package/dist/tests/fourslash/signature.posonly.fourslash.js.map +1 -0
- package/dist/tests/harness/fourslash/fourSlashTypes.js +17 -7
- package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
- package/dist/tests/harness/fourslash/runner.js +17 -7
- package/dist/tests/harness/fourslash/runner.js.map +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.js +17 -7
- package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.Consts.js +17 -7
- package/dist/tests/harness/fourslash/testState.Consts.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.js +17 -7
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/harness/fourslash/testStateUtils.js +17 -7
- package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
- package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +17 -7
- package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
- package/dist/tests/harness/testAccessHost.d.ts +1 -1
- package/dist/tests/harness/testAccessHost.js +1 -1
- package/dist/tests/harness/testAccessHost.js.map +1 -1
- package/dist/tests/harness/testHost.js +17 -7
- package/dist/tests/harness/testHost.js.map +1 -1
- package/dist/tests/harness/utils.d.ts +4 -4
- package/dist/tests/harness/utils.js.map +1 -1
- package/dist/tests/harness/vfs/factory.js +17 -7
- package/dist/tests/harness/vfs/factory.js.map +1 -1
- package/dist/tests/harness/vfs/filesystem.js +19 -11
- package/dist/tests/harness/vfs/filesystem.js.map +1 -1
- package/dist/tests/harness/vfs/pathValidation.js +17 -7
- package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
- package/dist/tests/importResolver.test.js +137 -0
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/importStatementUtils.test.js +92 -0
- package/dist/tests/importStatementUtils.test.js.map +1 -1
- package/dist/tests/languageServer.test.js +91 -0
- package/dist/tests/languageServer.test.js.map +1 -1
- package/dist/tests/localizer.test.js +17 -7
- package/dist/tests/localizer.test.js.map +1 -1
- package/dist/tests/logger.test.js +17 -7
- package/dist/tests/logger.test.js.map +1 -1
- package/dist/tests/lsp/languageServer.js +17 -7
- package/dist/tests/lsp/languageServer.js.map +1 -1
- package/dist/tests/lsp/languageServerTestUtils.d.ts +1 -5
- package/dist/tests/lsp/languageServerTestUtils.js +77 -22
- package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
- package/dist/tests/parser.test.js +264 -7
- package/dist/tests/parser.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js +17 -7
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/positionUtils.test.js +26 -0
- package/dist/tests/positionUtils.test.js.map +1 -1
- package/dist/tests/pyrightFileSystem.test.js +25 -0
- package/dist/tests/pyrightFileSystem.test.js.map +1 -1
- package/dist/tests/realTempFile.test.js +17 -7
- package/dist/tests/realTempFile.test.js.map +1 -1
- package/dist/tests/signatureHelp.test.js +73 -0
- package/dist/tests/signatureHelp.test.js.map +1 -1
- package/dist/tests/sourceFile.test.js +17 -7
- package/dist/tests/sourceFile.test.js.map +1 -1
- package/dist/tests/sourceMapperUtils.test.js +192 -0
- package/dist/tests/sourceMapperUtils.test.js.map +1 -1
- package/dist/tests/stringUtils.test.js +17 -7
- package/dist/tests/stringUtils.test.js.map +1 -1
- package/dist/tests/symbolNameUtils.test.js +17 -7
- package/dist/tests/symbolNameUtils.test.js.map +1 -1
- package/dist/tests/testState.test.js +17 -7
- package/dist/tests/testState.test.js.map +1 -1
- package/dist/tests/testUtils.js +17 -7
- package/dist/tests/testUtils.js.map +1 -1
- package/dist/tests/textRange.test.js +17 -7
- package/dist/tests/textRange.test.js.map +1 -1
- package/dist/tests/tokenizer.test.js +17 -7
- package/dist/tests/tokenizer.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +21 -7
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +23 -7
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +23 -7
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +45 -7
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +17 -7
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/dist/tests/typeEvaluator6.test.js +17 -7
- package/dist/tests/typeEvaluator6.test.js.map +1 -1
- package/dist/tests/typeEvaluator7.test.js +17 -7
- package/dist/tests/typeEvaluator7.test.js.map +1 -1
- package/dist/tests/typeEvaluator8.test.js +40 -28
- package/dist/tests/typeEvaluator8.test.js.map +1 -1
- package/dist/tests/typePrinter.test.js +82 -7
- package/dist/tests/typePrinter.test.js.map +1 -1
- package/dist/tests/uri.test.js +17 -7
- package/dist/tests/uri.test.js.map +1 -1
- package/dist/tests/workspaceEditUtils.test.js +48 -7
- package/dist/tests/workspaceEditUtils.test.js.map +1 -1
- package/dist/tests/zipfs.test.js +17 -7
- package/dist/tests/zipfs.test.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +10 -10
- package/dist/tests/lsp/rspack.testserver.config.d.ts +0 -63
- package/dist/tests/lsp/rspack.testserver.config.js +0 -60
- package/dist/tests/lsp/rspack.testserver.config.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.test.js","sourceRoot":"","sources":["../../../../../src/tests/checker.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checker.test.js","sourceRoot":"","sources":["../../../../../src/tests/checker.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,13 +20,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
20
20
|
}) : function(o, v) {
|
|
21
21
|
o["default"] = v;
|
|
22
22
|
});
|
|
23
|
-
var __importStar = (this && this.__importStar) || function (
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
};
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
30
40
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
31
41
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
32
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collectionUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/collectionUtils.test.ts"],"names":[],"mappings":";AAAA;;;;GAIG
|
|
1
|
+
{"version":3,"file":"collectionUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/collectionUtils.test.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAA4B;AAE5B,iEAAmD;AACnD,yCAAwD;AAExD,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAC9B,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,IAAA,gBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1E,IAAA,gBAAM,EAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE;IACrB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAC9B,MAAM,IAAI,GAAG,SAAS,CAAC;IACvB,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,gBAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE;IACxB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,gBAAM,CAAC,KAAK,CACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAC7B,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,gBAAM,CAAC,KAAK,CACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAC9B,SAAS,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAC9B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,gBAAM,CAAC,KAAK,CACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAChC,CAAC,CACJ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE;IACxB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,KAAK,CACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EACtC,IAAI,CAAC,CAAC,CAAC,CACV,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjC,MAAM,IAAI,GAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,gBAAM,CAAC,KAAK,CACR,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EACzC,KAAK,CACR,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IACzB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,oBAAa,EAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAEjF,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3C,gBAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC3B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9F,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,oBAAa,EAAE,CAAC,CAAC,CAAC;IAE7F,gBAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9F,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,oBAAa,EAAE,CAAC,CAAC,CAAC;IAE7F,gBAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IAClB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClC,IAAA,gBAAM,EAAC,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IAClB,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,IAAA,gBAAM,EAAC,CAAC,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,IAAI,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,IAAI,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,IAAI,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,IAAI,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;IACtB,MAAM,IAAI,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACjB,MAAM,IAAI,GAAe;QACrB,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;KACT,CAAC;IACF,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACpC,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACtE,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjE,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;IAChE,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;IAClE,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IAC/D,gBAAM,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;AACxE,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC;IAGH,YAAY,KAAa;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AAED,MAAM,CAAE,SAAQ,CAAC;IAGb,YAAY,KAAa,EAAE,IAAY;QACnC,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ"}
|
|
@@ -20,13 +20,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
20
20
|
}) : function(o, v) {
|
|
21
21
|
o["default"] = v;
|
|
22
22
|
});
|
|
23
|
-
var __importStar = (this && this.__importStar) || function (
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
};
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
30
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
41
|
const assert = __importStar(require("assert"));
|
|
32
42
|
const textRange_1 = require("../common/textRange");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.test.js","sourceRoot":"","sources":["../../../../../src/tests/common.test.ts"],"names":[],"mappings":";AAAA;;;;GAIG
|
|
1
|
+
{"version":3,"file":"common.test.js","sourceRoot":"","sources":["../../../../../src/tests/common.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* completionProviderUtils.test.ts
|
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
|
5
|
+
* Licensed under the MIT license.
|
|
6
|
+
*
|
|
7
|
+
* Unit tests for helpers in completionProviderUtils.ts.
|
|
8
|
+
*/
|
|
9
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
10
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
const assert_1 = __importDefault(require("assert"));
|
|
14
|
+
const completionProviderUtils_1 = require("../languageService/completionProviderUtils");
|
|
15
|
+
describe('detectTrailingOverlap', () => {
|
|
16
|
+
test('returns undefined for empty tail', () => {
|
|
17
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('', '=foo', 'adjacent'), undefined);
|
|
18
|
+
});
|
|
19
|
+
test('returns undefined when tail contains a non-allow-listed char', () => {
|
|
20
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('a', 'a)', 'adjacent'), undefined);
|
|
21
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('=a', '=a)', 'adjacent'), undefined);
|
|
22
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)(' ', ' )', 'adjacent'), undefined);
|
|
23
|
+
});
|
|
24
|
+
test('adjacent policy matches when tail is immediately present', () => {
|
|
25
|
+
const result = (0, completionProviderUtils_1.detectTrailingOverlap)('=', '="value")', 'adjacent');
|
|
26
|
+
assert_1.default.deepStrictEqual(result, { consumedChars: 1 });
|
|
27
|
+
});
|
|
28
|
+
test('adjacent policy does not skip whitespace', () => {
|
|
29
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('=', ' ="value")', 'adjacent'), undefined);
|
|
30
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', ' (arg)', 'adjacent'), undefined);
|
|
31
|
+
});
|
|
32
|
+
test('adjacent policy returns undefined when tail is missing', () => {
|
|
33
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('=', 'value)', 'adjacent'), undefined);
|
|
34
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('=', '', 'adjacent'), undefined);
|
|
35
|
+
});
|
|
36
|
+
test('skipInlineWhitespace policy skips spaces and tabs before the tail', () => {
|
|
37
|
+
assert_1.default.deepStrictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', ' (arg)', 'skipInlineWhitespace'), {
|
|
38
|
+
consumedChars: 3,
|
|
39
|
+
});
|
|
40
|
+
assert_1.default.deepStrictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', '\t(arg)', 'skipInlineWhitespace'), {
|
|
41
|
+
consumedChars: 2,
|
|
42
|
+
});
|
|
43
|
+
assert_1.default.deepStrictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', '(arg)', 'skipInlineWhitespace'), {
|
|
44
|
+
consumedChars: 1,
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
test('skipInlineWhitespace does not skip newlines', () => {
|
|
48
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', '\n(arg)', 'skipInlineWhitespace'), undefined);
|
|
49
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('(', '\r\n(arg)', 'skipInlineWhitespace'), undefined);
|
|
50
|
+
});
|
|
51
|
+
test('multi-character tail matches verbatim', () => {
|
|
52
|
+
assert_1.default.deepStrictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('()', '()', 'adjacent'), { consumedChars: 2 });
|
|
53
|
+
assert_1.default.strictEqual((0, completionProviderUtils_1.detectTrailingOverlap)('()', '(x)', 'adjacent'), undefined);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=completionProviderUtils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completionProviderUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/completionProviderUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -809,7 +809,7 @@ test('auto import sort text', async () => {
|
|
|
809
809
|
test('completion MRU affects sort order', async () => {
|
|
810
810
|
const completionProviderTestAccess = completionProvider_1.CompletionProvider;
|
|
811
811
|
// Reset MRU list to keep the test deterministic.
|
|
812
|
-
completionProviderTestAccess.
|
|
812
|
+
completionProviderTestAccess._mostRecentCompletions = [];
|
|
813
813
|
const code = `
|
|
814
814
|
// @filename: test.py
|
|
815
815
|
//// true_divide = 0
|
|
@@ -836,10 +836,10 @@ test('completion MRU affects sort order', async () => {
|
|
|
836
836
|
const trueDivide1 = result1.items.find((i) => i.label === 'true_divide');
|
|
837
837
|
(0, assert_1.default)(truly1?.sortText);
|
|
838
838
|
(0, assert_1.default)(trueDivide1?.sortText);
|
|
839
|
-
// Not in MRU list yet:
|
|
840
|
-
|
|
841
|
-
(
|
|
842
|
-
|
|
839
|
+
// Not in MRU list yet: both share the same category, so neither is promoted.
|
|
840
|
+
assert_1.default.strictEqual(truly1.sortText.split('.')[0], trueDivide1.sortText.split('.')[0]);
|
|
841
|
+
// Accepting 'truly' records it in the MRU. (MRU is updated on accept, not on passive resolve.)
|
|
842
|
+
completionProvider_1.CompletionProvider.recordCompletionAccepted('truly', '');
|
|
843
843
|
const provider2 = new completionProvider_1.CompletionProvider(state.program, uri, position, options, vscode_languageserver_1.CancellationToken.None);
|
|
844
844
|
const result2 = provider2.getCompletions();
|
|
845
845
|
(0, assert_1.default)(result2);
|
|
@@ -847,11 +847,61 @@ test('completion MRU affects sort order', async () => {
|
|
|
847
847
|
const trueDivide2 = result2.items.find((i) => i.label === 'true_divide');
|
|
848
848
|
(0, assert_1.default)(truly2?.sortText);
|
|
849
849
|
(0, assert_1.default)(trueDivide2?.sortText);
|
|
850
|
-
// Now the selected item is in MRU
|
|
851
|
-
(
|
|
852
|
-
|
|
850
|
+
// Now the selected item is in MRU and is promoted to an earlier category. Compare relative
|
|
851
|
+
// ordering instead of hard-coding enum-derived SortCategory prefixes (which shift whenever a new
|
|
852
|
+
// SortCategory is inserted).
|
|
853
|
+
(0, assert_1.default)(truly2.sortText < truly1.sortText); // promoted ahead of its own pre-MRU position
|
|
854
|
+
(0, assert_1.default)(truly2.sortText < trueDivide2.sortText); // and ahead of the non-MRU sibling
|
|
855
|
+
assert_1.default.strictEqual(trueDivide2.sortText.split('.')[0], trueDivide1.sortText.split('.')[0]); // sibling unchanged
|
|
853
856
|
// Reset MRU list so it doesn't affect other tests.
|
|
854
|
-
completionProviderTestAccess.
|
|
857
|
+
completionProviderTestAccess._mostRecentCompletions = [];
|
|
858
|
+
});
|
|
859
|
+
test('passive resolve does not change MRU sort order', async () => {
|
|
860
|
+
const completionProviderTestAccess = completionProvider_1.CompletionProvider;
|
|
861
|
+
// Reset MRU list to keep the test deterministic.
|
|
862
|
+
completionProviderTestAccess._mostRecentCompletions = [];
|
|
863
|
+
const code = `
|
|
864
|
+
// @filename: test.py
|
|
865
|
+
//// true_divide = 0
|
|
866
|
+
//// truly = 0
|
|
867
|
+
//// tru/*marker*/
|
|
868
|
+
`;
|
|
869
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
|
870
|
+
const marker = state.getMarkerByName('marker');
|
|
871
|
+
state.openFiles(state.testData.files.map((f) => f.fileName));
|
|
872
|
+
while (state.workspace.service.test_program.analyze())
|
|
873
|
+
;
|
|
874
|
+
const filePath = marker.fileName;
|
|
875
|
+
const uri = uri_1.Uri.file(filePath, state.serviceProvider);
|
|
876
|
+
const position = state.convertOffsetToPosition(filePath, marker.position);
|
|
877
|
+
const options = {
|
|
878
|
+
format: 'markdown',
|
|
879
|
+
snippet: false,
|
|
880
|
+
lazyEdit: false,
|
|
881
|
+
};
|
|
882
|
+
const provider1 = new completionProvider_1.CompletionProvider(state.program, uri, position, options, vscode_languageserver_1.CancellationToken.None);
|
|
883
|
+
const result1 = provider1.getCompletions();
|
|
884
|
+
(0, assert_1.default)(result1);
|
|
885
|
+
const truly1 = result1.items.find((i) => i.label === 'truly');
|
|
886
|
+
const trueDivide1 = result1.items.find((i) => i.label === 'true_divide');
|
|
887
|
+
(0, assert_1.default)(truly1?.sortText);
|
|
888
|
+
(0, assert_1.default)(trueDivide1?.sortText);
|
|
889
|
+
assert_1.default.strictEqual(truly1.sortText.split('.')[0], trueDivide1.sortText.split('.')[0]);
|
|
890
|
+
// Passive resolve (fired per keystroke while previewing inline suggestions) must NOT mutate the
|
|
891
|
+
// MRU; otherwise the ranking oscillates as the user types.
|
|
892
|
+
await provider1.resolveCompletionItem(truly1);
|
|
893
|
+
const provider2 = new completionProvider_1.CompletionProvider(state.program, uri, position, options, vscode_languageserver_1.CancellationToken.None);
|
|
894
|
+
const result2 = provider2.getCompletions();
|
|
895
|
+
(0, assert_1.default)(result2);
|
|
896
|
+
const truly2 = result2.items.find((i) => i.label === 'truly');
|
|
897
|
+
const trueDivide2 = result2.items.find((i) => i.label === 'true_divide');
|
|
898
|
+
(0, assert_1.default)(truly2?.sortText);
|
|
899
|
+
(0, assert_1.default)(trueDivide2?.sortText);
|
|
900
|
+
// Sort order is unchanged because resolve did not record anything in the MRU.
|
|
901
|
+
assert_1.default.strictEqual(truly2.sortText.split('.')[0], trueDivide2.sortText.split('.')[0]);
|
|
902
|
+
assert_1.default.strictEqual(completionProviderTestAccess._mostRecentCompletions.length, 0);
|
|
903
|
+
// Reset MRU list so it doesn't affect other tests.
|
|
904
|
+
completionProviderTestAccess._mostRecentCompletions = [];
|
|
855
905
|
});
|
|
856
906
|
test('override generic', async () => {
|
|
857
907
|
const code = `
|
|
@@ -1802,4 +1852,63 @@ test('TypedDict subscript completion with Literal assignment target', async () =
|
|
|
1802
1852
|
},
|
|
1803
1853
|
});
|
|
1804
1854
|
});
|
|
1855
|
+
test('completion itemDefaults.data hoist when capability enabled', async () => {
|
|
1856
|
+
const code = `
|
|
1857
|
+
// @filename: test.py
|
|
1858
|
+
//// def my_function(): ...
|
|
1859
|
+
//// my_/*marker*/
|
|
1860
|
+
`;
|
|
1861
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
|
1862
|
+
const marker = state.getMarkerByName('marker');
|
|
1863
|
+
const filePath = marker.fileName;
|
|
1864
|
+
const uri = uri_1.Uri.file(filePath, state.serviceProvider);
|
|
1865
|
+
const position = state.convertOffsetToPosition(filePath, marker.position);
|
|
1866
|
+
const options = {
|
|
1867
|
+
format: 'markdown',
|
|
1868
|
+
snippet: false,
|
|
1869
|
+
lazyEdit: false,
|
|
1870
|
+
completionItemDataDefault: true,
|
|
1871
|
+
};
|
|
1872
|
+
const result = new completionProvider_1.CompletionProvider(state.program, uri, position, options, vscode_languageserver_1.CancellationToken.None).getCompletions();
|
|
1873
|
+
(0, assert_1.default)(result);
|
|
1874
|
+
(0, assert_1.default)(result.items.length > 0);
|
|
1875
|
+
// The shared `uri`/`position` are hoisted into `itemDefaults.data`, and the client is told to
|
|
1876
|
+
// merge it back per item via `applyKind.data === Merge`.
|
|
1877
|
+
assert_1.default.deepStrictEqual(result.itemDefaults?.data, { uri: uri.toString(), position });
|
|
1878
|
+
assert_1.default.strictEqual(result.applyKind?.data, vscode_languageserver_types_1.ApplyKind.Merge);
|
|
1879
|
+
const item = result.items.find((i) => i.label === 'my_function');
|
|
1880
|
+
(0, assert_1.default)(item);
|
|
1881
|
+
// Per-item data no longer carries the duplicated `uri`/`position`, but retains item-specific fields.
|
|
1882
|
+
const itemData = item.data;
|
|
1883
|
+
assert_1.default.strictEqual(itemData.uri, undefined);
|
|
1884
|
+
assert_1.default.strictEqual(itemData.position, undefined);
|
|
1885
|
+
assert_1.default.strictEqual(itemData.symbolLabel, 'my_function');
|
|
1886
|
+
});
|
|
1887
|
+
test('completion itemDefaults.data not hoisted when capability disabled', async () => {
|
|
1888
|
+
const code = `
|
|
1889
|
+
// @filename: test.py
|
|
1890
|
+
//// def my_function(): ...
|
|
1891
|
+
//// my_/*marker*/
|
|
1892
|
+
`;
|
|
1893
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
|
1894
|
+
const marker = state.getMarkerByName('marker');
|
|
1895
|
+
const filePath = marker.fileName;
|
|
1896
|
+
const uri = uri_1.Uri.file(filePath, state.serviceProvider);
|
|
1897
|
+
const position = state.convertOffsetToPosition(filePath, marker.position);
|
|
1898
|
+
const options = {
|
|
1899
|
+
format: 'markdown',
|
|
1900
|
+
snippet: false,
|
|
1901
|
+
lazyEdit: false,
|
|
1902
|
+
};
|
|
1903
|
+
const result = new completionProvider_1.CompletionProvider(state.program, uri, position, options, vscode_languageserver_1.CancellationToken.None).getCompletions();
|
|
1904
|
+
(0, assert_1.default)(result);
|
|
1905
|
+
assert_1.default.strictEqual(result.itemDefaults?.data, undefined);
|
|
1906
|
+
assert_1.default.strictEqual(result.applyKind, undefined);
|
|
1907
|
+
const item = result.items.find((i) => i.label === 'my_function');
|
|
1908
|
+
(0, assert_1.default)(item);
|
|
1909
|
+
// Without the capability, each item still carries the full `uri`/`position` payload.
|
|
1910
|
+
const itemData = item.data;
|
|
1911
|
+
assert_1.default.strictEqual(itemData.uri, uri.toString());
|
|
1912
|
+
assert_1.default.deepStrictEqual(itemData.position, position);
|
|
1913
|
+
});
|
|
1805
1914
|
//# sourceMappingURL=completions.test.js.map
|