@zzzen/pyright-internal 1.2.0-dev.20260222 → 1.2.0-dev.20260426

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.
Files changed (233) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +1 -1
  2. package/dist/analyzer/backgroundAnalysisProgram.js +9 -6
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/binder.d.ts +10 -1
  5. package/dist/analyzer/binder.js +258 -41
  6. package/dist/analyzer/binder.js.map +1 -1
  7. package/dist/analyzer/cellChainIndex.d.ts +34 -0
  8. package/dist/analyzer/cellChainIndex.js +126 -0
  9. package/dist/analyzer/cellChainIndex.js.map +1 -0
  10. package/dist/analyzer/checker.js +0 -1
  11. package/dist/analyzer/checker.js.map +1 -1
  12. package/dist/analyzer/codeFlowEngine.js +16 -1
  13. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  14. package/dist/analyzer/constructors.js +9 -2
  15. package/dist/analyzer/constructors.js.map +1 -1
  16. package/dist/analyzer/importResolver.d.ts +3 -21
  17. package/dist/analyzer/importResolver.js +42 -316
  18. package/dist/analyzer/importResolver.js.map +1 -1
  19. package/dist/analyzer/importResolverFileSystem.d.ts +3 -0
  20. package/dist/analyzer/importResolverFileSystem.js +160 -0
  21. package/dist/analyzer/importResolverFileSystem.js.map +1 -0
  22. package/dist/analyzer/importResolverTypes.d.ts +24 -0
  23. package/dist/analyzer/importResolverTypes.js +8 -0
  24. package/dist/analyzer/importResolverTypes.js.map +1 -0
  25. package/dist/analyzer/importStatementUtils.js +9 -0
  26. package/dist/analyzer/importStatementUtils.js.map +1 -1
  27. package/dist/analyzer/parseTreeUtils.d.ts +1 -0
  28. package/dist/analyzer/parseTreeUtils.js +24 -7
  29. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  30. package/dist/analyzer/patternMatching.js +14 -2
  31. package/dist/analyzer/patternMatching.js.map +1 -1
  32. package/dist/analyzer/program.d.ts +5 -3
  33. package/dist/analyzer/program.js +40 -51
  34. package/dist/analyzer/program.js.map +1 -1
  35. package/dist/analyzer/pythonPathUtils.d.ts +1 -1
  36. package/dist/analyzer/pythonPathUtils.js +3 -1
  37. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  38. package/dist/analyzer/scope.d.ts +10 -1
  39. package/dist/analyzer/scope.js +14 -1
  40. package/dist/analyzer/scope.js.map +1 -1
  41. package/dist/analyzer/service.d.ts +11 -6
  42. package/dist/analyzer/service.js +82 -83
  43. package/dist/analyzer/service.js.map +1 -1
  44. package/dist/analyzer/sourceEnumerator.d.ts +3 -0
  45. package/dist/analyzer/sourceEnumerator.js +27 -1
  46. package/dist/analyzer/sourceEnumerator.js.map +1 -1
  47. package/dist/analyzer/sourceFile.d.ts +2 -1
  48. package/dist/analyzer/sourceFile.js +55 -25
  49. package/dist/analyzer/sourceFile.js.map +1 -1
  50. package/dist/analyzer/sourceFileInfo.d.ts +4 -0
  51. package/dist/analyzer/sourceFileInfo.js +9 -0
  52. package/dist/analyzer/sourceFileInfo.js.map +1 -1
  53. package/dist/analyzer/sourceMapper.d.ts +1 -0
  54. package/dist/analyzer/sourceMapper.js +44 -0
  55. package/dist/analyzer/sourceMapper.js.map +1 -1
  56. package/dist/analyzer/tuples.js +3 -1
  57. package/dist/analyzer/tuples.js.map +1 -1
  58. package/dist/analyzer/typeEvaluator.js +102 -51
  59. package/dist/analyzer/typeEvaluator.js.map +1 -1
  60. package/dist/analyzer/typeEvaluatorTypes.d.ts +2 -0
  61. package/dist/analyzer/typeEvaluatorTypes.js +4 -0
  62. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  63. package/dist/analyzer/typeGuards.js +28 -6
  64. package/dist/analyzer/typeGuards.js.map +1 -1
  65. package/dist/analyzer/typeStubWriter.d.ts +15 -50
  66. package/dist/analyzer/typeStubWriter.js +91 -9
  67. package/dist/analyzer/typeStubWriter.js.map +1 -1
  68. package/dist/analyzer/typeUtils.d.ts +1 -0
  69. package/dist/analyzer/typeUtils.js +27 -3
  70. package/dist/analyzer/typeUtils.js.map +1 -1
  71. package/dist/analyzer/typeshedInfoProvider.d.ts +2 -0
  72. package/dist/analyzer/typeshedInfoProvider.js +232 -0
  73. package/dist/analyzer/typeshedInfoProvider.js.map +1 -0
  74. package/dist/backgroundAnalysisBase.d.ts +3 -3
  75. package/dist/backgroundAnalysisBase.js +12 -9
  76. package/dist/backgroundAnalysisBase.js.map +1 -1
  77. package/dist/commands/createTypeStub.d.ts +16 -8
  78. package/dist/commands/createTypeStub.js +58 -36
  79. package/dist/commands/createTypeStub.js.map +1 -1
  80. package/dist/common/cancellationUtils.d.ts +7 -0
  81. package/dist/common/cancellationUtils.js +34 -0
  82. package/dist/common/cancellationUtils.js.map +1 -1
  83. package/dist/common/collectionUtils.d.ts +3 -3
  84. package/dist/common/collectionUtils.js.map +1 -1
  85. package/dist/common/core.d.ts +1 -1
  86. package/dist/common/core.js.map +1 -1
  87. package/dist/common/crypto.js +11 -0
  88. package/dist/common/crypto.js.map +1 -1
  89. package/dist/common/extensibility.d.ts +7 -0
  90. package/dist/common/extensibility.js.map +1 -1
  91. package/dist/common/fullAccessHost.js +4 -2
  92. package/dist/common/fullAccessHost.js.map +1 -1
  93. package/dist/common/pathUtils.d.ts +4 -1
  94. package/dist/common/pathUtils.js.map +1 -1
  95. package/dist/common/realFileSystem.js +42 -3
  96. package/dist/common/realFileSystem.js.map +1 -1
  97. package/dist/common/serviceKeys.d.ts +3 -0
  98. package/dist/common/serviceKeys.js +2 -0
  99. package/dist/common/serviceKeys.js.map +1 -1
  100. package/dist/common/serviceProviderExtensions.js.map +1 -1
  101. package/dist/common/uri/uriUtils.d.ts +4 -0
  102. package/dist/common/uri/uriUtils.js +19 -3
  103. package/dist/common/uri/uriUtils.js.map +1 -1
  104. package/dist/common/workspaceEditUtils.js +0 -2
  105. package/dist/common/workspaceEditUtils.js.map +1 -1
  106. package/dist/languageServerBase.d.ts +1 -0
  107. package/dist/languageServerBase.js +6 -0
  108. package/dist/languageServerBase.js.map +1 -1
  109. package/dist/languageService/completionProvider.d.ts +6 -0
  110. package/dist/languageService/completionProvider.js +252 -75
  111. package/dist/languageService/completionProvider.js.map +1 -1
  112. package/dist/languageService/definitionProvider.js +1 -1
  113. package/dist/languageService/definitionProvider.js.map +1 -1
  114. package/dist/languageService/documentSymbolCollector.js +34 -4
  115. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  116. package/dist/languageService/dynamicFeature.d.ts +3 -0
  117. package/dist/languageService/dynamicFeature.js +5 -0
  118. package/dist/languageService/dynamicFeature.js.map +1 -1
  119. package/dist/languageService/hoverProvider.d.ts +2 -1
  120. package/dist/languageService/hoverProvider.js +13 -5
  121. package/dist/languageService/hoverProvider.js.map +1 -1
  122. package/dist/languageService/pullDiagnosticsDynamicFeature.d.ts +1 -0
  123. package/dist/languageService/pullDiagnosticsDynamicFeature.js +4 -0
  124. package/dist/languageService/pullDiagnosticsDynamicFeature.js.map +1 -1
  125. package/dist/languageService/referencesProvider.js +5 -4
  126. package/dist/languageService/referencesProvider.js.map +1 -1
  127. package/dist/languageService/signatureHelpProvider.d.ts +1 -0
  128. package/dist/languageService/signatureHelpProvider.js +76 -2
  129. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  130. package/dist/languageService/symbolIndexer.d.ts +1 -0
  131. package/dist/languageService/symbolIndexer.js.map +1 -1
  132. package/dist/languageService/tooltipUtils.d.ts +11 -4
  133. package/dist/languageService/tooltipUtils.js +195 -7
  134. package/dist/languageService/tooltipUtils.js.map +1 -1
  135. package/dist/parser/characterStream.js +26 -2
  136. package/dist/parser/characterStream.js.map +1 -1
  137. package/dist/parser/parser.d.ts +2 -0
  138. package/dist/parser/parser.js +11 -7
  139. package/dist/parser/parser.js.map +1 -1
  140. package/dist/parser/tokenizer.d.ts +6 -2
  141. package/dist/parser/tokenizer.js +602 -202
  142. package/dist/parser/tokenizer.js.map +1 -1
  143. package/dist/parser/tokenizerTypes.js +115 -39
  144. package/dist/parser/tokenizerTypes.js.map +1 -1
  145. package/dist/partialStubService.d.ts +11 -0
  146. package/dist/partialStubService.js +23 -1
  147. package/dist/partialStubService.js.map +1 -1
  148. package/dist/pyright.js +13 -2
  149. package/dist/pyright.js.map +1 -1
  150. package/dist/tests/benchmarks/parserBenchmark.test.d.ts +1 -0
  151. package/dist/tests/benchmarks/parserBenchmark.test.js +220 -0
  152. package/dist/tests/benchmarks/parserBenchmark.test.js.map +1 -0
  153. package/dist/tests/benchmarks/tokenizerBenchmark.test.d.ts +1 -0
  154. package/dist/tests/benchmarks/tokenizerBenchmark.test.js +236 -0
  155. package/dist/tests/benchmarks/tokenizerBenchmark.test.js.map +1 -0
  156. package/dist/tests/chainedSourceFiles.test.js +138 -0
  157. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  158. package/dist/tests/checker.test.js +12 -0
  159. package/dist/tests/checker.test.js.map +1 -1
  160. package/dist/tests/completions.test.js +328 -0
  161. package/dist/tests/completions.test.js.map +1 -1
  162. package/dist/tests/config.test.js +54 -0
  163. package/dist/tests/config.test.js.map +1 -1
  164. package/dist/tests/filesystem.test.js +44 -0
  165. package/dist/tests/filesystem.test.js.map +1 -1
  166. package/dist/tests/fourSlashRunner.test.js +1 -1
  167. package/dist/tests/fourSlashRunner.test.js.map +1 -1
  168. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.js +25 -1
  169. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.js.map +1 -1
  170. package/dist/tests/fourslash/import.multipart3.fourslash.d.ts +1 -0
  171. package/dist/tests/fourslash/import.multipart3.fourslash.js +46 -0
  172. package/dist/tests/fourslash/import.multipart3.fourslash.js.map +1 -0
  173. package/dist/tests/fourslash/import.pytyped.unsupportedDunderAll.fourslash.d.ts +1 -0
  174. package/dist/tests/fourslash/import.pytyped.unsupportedDunderAll.fourslash.js +33 -0
  175. package/dist/tests/fourslash/import.pytyped.unsupportedDunderAll.fourslash.js.map +1 -0
  176. package/dist/tests/harness/fourslash/runner.d.ts +4 -4
  177. package/dist/tests/harness/fourslash/runner.js +5 -5
  178. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  179. package/dist/tests/harness/fourslash/testState.d.ts +20 -5
  180. package/dist/tests/harness/fourslash/testState.js +11 -26
  181. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  182. package/dist/tests/harness/fourslash/testStateUtils.js +2 -0
  183. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  184. package/dist/tests/harness/testAccessHost.d.ts +3 -1
  185. package/dist/tests/harness/testAccessHost.js +6 -2
  186. package/dist/tests/harness/testAccessHost.js.map +1 -1
  187. package/dist/tests/harness/testHost.js +20 -18
  188. package/dist/tests/harness/testHost.js.map +1 -1
  189. package/dist/tests/harness/vfs/factory.js +4 -1
  190. package/dist/tests/harness/vfs/factory.js.map +1 -1
  191. package/dist/tests/harness/vfs/filesystem.d.ts +8 -1
  192. package/dist/tests/harness/vfs/filesystem.js +84 -30
  193. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  194. package/dist/tests/hoverProvider.test.js +290 -0
  195. package/dist/tests/hoverProvider.test.js.map +1 -1
  196. package/dist/tests/importResolverSupport.test.d.ts +1 -0
  197. package/dist/tests/importResolverSupport.test.js +319 -0
  198. package/dist/tests/importResolverSupport.test.js.map +1 -0
  199. package/dist/tests/importStatementUtils.test.js +66 -0
  200. package/dist/tests/importStatementUtils.test.js.map +1 -1
  201. package/dist/tests/lsp/{webpack.testserver.config.d.ts → rspack.testserver.config.d.ts} +1 -1
  202. package/dist/tests/lsp/{webpack.testserver.config.js → rspack.testserver.config.js} +4 -11
  203. package/dist/tests/lsp/rspack.testserver.config.js.map +1 -0
  204. package/dist/tests/realTempFile.test.d.ts +1 -0
  205. package/dist/tests/realTempFile.test.js +144 -0
  206. package/dist/tests/realTempFile.test.js.map +1 -0
  207. package/dist/tests/service.test.js +182 -3
  208. package/dist/tests/service.test.js.map +1 -1
  209. package/dist/tests/signatureHelp.test.js +391 -6
  210. package/dist/tests/signatureHelp.test.js.map +1 -1
  211. package/dist/tests/testState.test.js +19 -0
  212. package/dist/tests/testState.test.js.map +1 -1
  213. package/dist/tests/tokenizer.test.js +59 -2
  214. package/dist/tests/tokenizer.test.js.map +1 -1
  215. package/dist/tests/typeEvaluator1.test.js +4 -0
  216. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  217. package/dist/tests/typeEvaluator2.test.js +12 -0
  218. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  219. package/dist/tests/typeEvaluator3.test.js +8 -1
  220. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  221. package/dist/tests/typeEvaluator6.test.js +7 -0
  222. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  223. package/dist/tests/typeEvaluator8.test.js +13 -1
  224. package/dist/tests/typeEvaluator8.test.js.map +1 -1
  225. package/dist/tests/uri.test.js +29 -0
  226. package/dist/tests/uri.test.js.map +1 -1
  227. package/dist/tests/wildcardImportPackageMerge.test.d.ts +1 -0
  228. package/dist/tests/wildcardImportPackageMerge.test.js +97 -0
  229. package/dist/tests/wildcardImportPackageMerge.test.js.map +1 -0
  230. package/dist/tests/workspaceEditUtils.test.js +0 -1
  231. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  232. package/package.json +16 -14
  233. package/dist/tests/lsp/webpack.testserver.config.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../../../../src/tests/config.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../../../../src/tests/config.test.ts"],"names":[],"mappings":"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"}
@@ -186,6 +186,50 @@ test('createFromFileSystemWithMetadata', () => {
186
186
  });
187
187
  (0, assert_1.default)(fs.existsSync(uriUtils_1.UriEx.file(factory.srcFolder)));
188
188
  });
189
+ test('Mounted directory traversal is lazy for statSync', () => {
190
+ const cwd = uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/'));
191
+ const fs = new vfs.TestFileSystem(/*ignoreCase*/ true, { cwd: cwd.getFilePath() });
192
+ const calls = { readdirSync: 0, statSync: 0, readFileSync: 0 };
193
+ const sourceRoot = (0, pathUtils_1.normalizeSlashes)('/src');
194
+ const entries = ['a.pyi', 'b.pyi'];
195
+ const resolver = {
196
+ readdirSync: (path) => {
197
+ calls.readdirSync++;
198
+ assert_1.default.equal(path, sourceRoot);
199
+ return [
200
+ { name: 'a.pyi', kind: 'file' },
201
+ { name: 'b.pyi', kind: 'file' },
202
+ ];
203
+ },
204
+ statSync: (path) => {
205
+ calls.statSync++;
206
+ if (path === sourceRoot) {
207
+ return { mode: vfs.S_IFDIR, size: 0 };
208
+ }
209
+ if (path === (0, pathUtils_1.normalizeSlashes)('/src/a.pyi') || path === (0, pathUtils_1.normalizeSlashes)('/src/b.pyi')) {
210
+ return { mode: vfs.S_IFREG, size: 1 };
211
+ }
212
+ const err = new Error(`ENOENT: ${path}`);
213
+ err.code = 'ENOENT';
214
+ throw err;
215
+ },
216
+ readFileSync: (_path) => {
217
+ calls.readFileSync++;
218
+ return Buffer.from('x');
219
+ },
220
+ };
221
+ fs.mountSync(sourceRoot, (0, pathUtils_1.normalizeSlashes)('/mnt'), resolver);
222
+ // Path traversal to a single child should not force a full directory enumeration.
223
+ const stats = fs.statSync(uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/mnt/a.pyi')));
224
+ (0, assert_1.default)(stats.isFile());
225
+ assert_1.default.equal(calls.readdirSync, 0);
226
+ assert_1.default.equal(calls.statSync, 1);
227
+ // Full enumeration should still work when explicitly requested.
228
+ const listed = fs.readdirSync(uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/mnt')));
229
+ assert_1.default.deepEqual(listed.sort(), entries.slice().sort());
230
+ assert_1.default.equal(calls.readdirSync, 1);
231
+ assert_1.default.equal(calls.statSync, 1);
232
+ });
189
233
  function countFile(files) {
190
234
  let count = 0;
191
235
  for (const value of Object.values(flatten(files))) {
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem.test.js","sourceRoot":"","sources":["../../../../../src/tests/filesystem.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filesystem.test.js","sourceRoot":"","sources":["../../../../../src/tests/filesystem.test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAA4B;AAE5B,mDAAqE;AACrE,yDAA2C;AAC3C,+DAAiD;AACjD,8DAAgD;AAChD,qDAA+C;AAE/C,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;IACnB,MAAM,GAAG,GAAG,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAChE,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACjB,MAAM,GAAG,GAAG,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEnF,oBAAoB;IACpB,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QACf,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,IAAA,4BAAgB,EAAC,IAAI,CAAC,CAAC,CAAC;IAE/C,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACjC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAEpC,oBAAoB;IACpB,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QACf,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC3B,MAAM,GAAG,GAAG,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEnF,oBAAoB;IACpB,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QACf,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExC,IAAA,gBAAM,EAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;IACf,MAAM,GAAG,GAAG,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEnF,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAE1C,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACpC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAE/B,MAAM,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAClC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAE1B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvC,gBAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;IACpB,MAAM,GAAG,GAAG,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC;IAClC,MAAM,KAAK,GAAgB;QACvB,CAAC,IAAA,4BAAgB,EAAC,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC1D,CAAC,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QACxD,CAAC,IAAA,4BAAgB,EAAC,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QACtD,CAAC,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;QAC7E,CAAC,IAAA,4BAAgB,EAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;KACxF,CAAC;IAEF,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAE5D,2BAA2B;IAC3B,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEjC,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC/F,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC5F,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3F,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3F,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;AAChG,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;IAChB,MAAM,GAAG,GAAG,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAEhE,mCAAmC;IACnC,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;IAEjC,qDAAqD;IACrD,EAAE,CAAC,QAAQ,EAAE,CAAC;IACd,IAAA,gBAAM,EAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,CAAC,UAAW,CAAC,UAAU,CAAC,CAAC;IAElC,6DAA6D;IAC7D,MAAM,OAAO,GAAG,EAAE,CAAC,UAAW,CAAC,MAAM,EAAE,CAAC;IACxC,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5B,IAAA,gBAAM,EAAC,OAAO,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC;IAE7C,wCAAwC;IACxC,OAAO,CAAC,YAAY,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACjC,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5B,IAAA,gBAAM,EAAC,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACjB,MAAM,GAAG,GAAG,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEnF,iBAAiB;IACjB,EAAE,CAAC,QAAQ,EAAE,CAAC;IACd,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE1D,yBAAyB;IACzB,gBAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,kBAAkB;IAClB,EAAE,CAAC,QAAQ,EAAE,CAAC;IACd,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE1D,+BAA+B;IAC/B,gBAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,iCAAiC;IACjC,gBAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,UAAW,CAAC,UAAU,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEhE,iCAAiC;IACjC,MAAM,CAAC,GAAG,EAAE,CAAC,UAAW,CAAC,MAAM,EAAE,CAAC;IAElC,2CAA2C;IAC3C,IAAA,gBAAM,EAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAErD,4FAA4F;IAC5F,oEAAoE;IACpE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEzD,oCAAoC;IACpC,6DAA6D;IAC7D,gBAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,QAAQ,GAAG,IAAA,4BAAgB,EAAC,IAAA,wBAAY,EAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,QAAQ,CAAC;IAEzB,2DAA2D;IAC3D,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QACtD,SAAS,EAAE,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxD,GAAG,EAAE,OAAO,CAAC,SAAS;KACzB,CAAC,CAAC;IAEH,wGAAwG;IACxG,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACvD,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE3B,eAAe;IACf,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;AACzE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACtG,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAK,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC/F,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,WAAW,GAAG,IAAA,4BAAgB,EAAC,IAAA,wBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC5F,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE;QACvE,GAAG,EAAE,OAAO,CAAC,SAAS;QACtB,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE;KAChE,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACvD,IAAA,gBAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC1C,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE;QACvE,GAAG,EAAE,OAAO,CAAC,SAAS;QACtB,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KAC7B,CAAC,CAAC;IAEH,IAAA,gBAAM,EAAC,EAAE,CAAC,UAAU,CAAC,gBAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC1D,MAAM,GAAG,GAAG,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEnF,MAAM,KAAK,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAA,4BAAgB,EAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEnC,MAAM,QAAQ,GAA2B;QACrC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;YAClB,KAAK,CAAC,WAAW,EAAE,CAAC;YACpB,gBAAM,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC/B,OAAO;gBACH,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAe,EAAE;gBACxC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAe,EAAE;aAC3C,CAAC;QACN,CAAC;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,KAAK,CAAC,QAAQ,EAAE,CAAC;YACjB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACtB,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1C,CAAC;YACD,IAAI,IAAI,KAAK,IAAA,4BAAgB,EAAC,YAAY,CAAC,IAAI,IAAI,KAAK,IAAA,4BAAgB,EAAC,YAAY,CAAC,EAAE,CAAC;gBACrF,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1C,CAAC;YACD,MAAM,GAAG,GAA0B,IAAI,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YAChE,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC;YACpB,MAAM,GAAG,CAAC;QACd,CAAC;QACD,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;YACpB,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;KACJ,CAAC;IAEF,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAA,4BAAgB,EAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE7D,kFAAkF;IAClF,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACtE,IAAA,gBAAM,EAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACvB,gBAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACnC,gBAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEhC,gEAAgE;IAChE,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAK,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACpE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,gBAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACnC,gBAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,SAAS,SAAS,CAAC,KAAkB;IACjC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAChD,IAAI,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,CAAC;YAC5B,KAAK,EAAE,CAAC;QACZ,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,OAAO,CAAC,KAAkB;IAC/B,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACxB,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAkB,EAAE,MAAmB;IACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACpB,IAAI,KAAK,YAAY,GAAG,CAAC,SAAS,EAAE,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;AACL,CAAC"}
@@ -48,7 +48,7 @@ describe('fourslash tests', () => {
48
48
  const justName = fn.replace(/^.*[\\/]/, '');
49
49
  // TODO: make these to use promise/async rather than callback token
50
50
  it('fourslash test ' + justName + ' run', (cb) => {
51
- (0, runner_1.runFourSlashTest)(filesystem_1.MODULE_PATH, fn, cb);
51
+ (0, runner_1.runFourSlashTest)(filesystem_1.MODULE_PATH, fn, cb, { enablePartialStub: true });
52
52
  });
53
53
  });
54
54
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fourSlashRunner.test.js","sourceRoot":"","sources":["../../../../../src/tests/fourSlashRunner.test.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAE7B,mDAAuD;AACvD,uDAA8D;AAC9D,yDAA2C;AAC3C,yDAAuD;AAEvD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;IAC3E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACvB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;YAChB,MAAM,EAAE,GAAG,IAAA,4BAAgB,EAAC,IAAI,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAE5C,mEAAmE;YACnE,EAAE,CAAC,iBAAiB,GAAG,QAAQ,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC7C,IAAA,yBAAgB,EAAC,wBAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"fourSlashRunner.test.js","sourceRoot":"","sources":["../../../../../src/tests/fourSlashRunner.test.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAE7B,mDAAuD;AACvD,uDAA8D;AAC9D,yDAA2C;AAC3C,yDAAuD;AAEvD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7B,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;IAC3E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3F,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACvB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;YAChB,MAAM,EAAE,GAAG,IAAA,4BAAgB,EAAC,IAAI,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAE5C,mEAAmE;YACnE,EAAE,CAAC,iBAAiB,GAAG,QAAQ,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC7C,IAAA,yBAAgB,EAAC,wBAAW,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -11,11 +11,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  //// from testLib1 import func1
12
12
  ////
13
13
  //// [|/*marker*/func1|]('')
14
+ // @filename: mylib/__init__.py
15
+ // @library: true
16
+ //// from ._private import Foo as _Foo
17
+ //// foo = _Foo()
18
+ // @filename: mylib/_private.py
19
+ // @library: true
20
+ //// class Foo:
21
+ //// def [|func|](self) -> int:
22
+ //// return 1
23
+ // @filename: typings/mylib/__init__.pyi
24
+ //// class Foo:
25
+ //// def [|/*ignore2*/func|](self) -> int: ...
26
+ ////
27
+ //// foo: Foo
28
+ // @filename: test2.py
29
+ //// from mylib import foo
30
+ //// foo.[|/*marker2*/func|]()
14
31
  {
15
32
  const ranges = helper.getRanges().filter((r) => !r.marker);
33
+ const testLib1Ranges = ranges.filter((r) => r.fileName.replace(/\\/g, '/').endsWith('testLib1/__init__.py'));
34
+ const myLibRanges = ranges.filter((r) => r.fileName.replace(/\\/g, '/').endsWith('mylib/_private.py'));
16
35
  helper.verifyFindDefinitions({
17
36
  marker: {
18
- definitions: ranges.map((r) => {
37
+ definitions: testLib1Ranges.map((r) => {
38
+ return { path: r.fileName, range: helper.convertPositionRange(r) };
39
+ }),
40
+ },
41
+ marker2: {
42
+ definitions: myLibRanges.map((r) => {
19
43
  return { path: r.fileName, range: helper.convertPositionRange(r) };
20
44
  }),
21
45
  },
@@ -1 +1 @@
1
- {"version":3,"file":"findDefinitions.definitionFilter.preferSource.fourslash.js","sourceRoot":"","sources":["../../../../../../src/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.ts"],"names":[],"mappings":";AAAA,+CAA+C;;AAE/C,kCAAkC;AAClC,iBAAiB;AACjB,sBAAsB;AACtB,aAAa;AAEb,2CAA2C;AAC3C,yCAAyC;AAEzC,qBAAqB;AACrB,+BAA+B;AAC/B,IAAI;AACJ,4BAA4B;AAE5B,CAAC;IACG,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE3D,MAAM,CAAC,qBAAqB,CACxB;QACI,MAAM,EAAE;YACJ,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC1B,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,CAAC,CAAC;SACL;KACJ,EACD,cAAc,CACjB,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"findDefinitions.definitionFilter.preferSource.fourslash.js","sourceRoot":"","sources":["../../../../../../src/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.ts"],"names":[],"mappings":";AAAA,+CAA+C;;AAE/C,kCAAkC;AAClC,iBAAiB;AACjB,sBAAsB;AACtB,aAAa;AAEb,2CAA2C;AAC3C,yCAAyC;AAEzC,qBAAqB;AACrB,+BAA+B;AAC/B,IAAI;AACJ,4BAA4B;AAE5B,+BAA+B;AAC/B,iBAAiB;AACjB,sCAAsC;AACtC,iBAAiB;AAEjB,+BAA+B;AAC/B,iBAAiB;AACjB,eAAe;AACf,mCAAmC;AACnC,qBAAqB;AAErB,wCAAwC;AACxC,eAAe;AACf,kDAAkD;AAClD,IAAI;AACJ,aAAa;AAEb,sBAAsB;AACtB,0BAA0B;AAC1B,8BAA8B;AAE9B,CAAC;IACG,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC7G,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAEvG,MAAM,CAAC,qBAAqB,CACxB;QACI,MAAM,EAAE;YACJ,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,CAAC,CAAC;SACL;QACD,OAAO,EAAE;YACL,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/B,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,CAAC,CAAC;SACL;KACJ,EACD,cAAc,CACjB,CAAC;AACN,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ /// <reference path="typings/fourslash.d.ts" />
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ // @filename: mylib/__init__.py
5
+ ////
6
+ // @filename: mylib/a.py
7
+ //// def do_something(value: str) -> None:
8
+ //// pass
9
+ // @filename: mylib/b.py
10
+ //// def do_other() -> None:
11
+ //// pass
12
+ // @filename: my_common_stuffs.py
13
+ //// import mylib.b
14
+ //// BLA = '123'
15
+ // @filename: test.py
16
+ //// import mylib.a
17
+ ////
18
+ //// from my_common_stuffs import *
19
+ ////
20
+ //// mylib.a.do_something(BLA)
21
+ //// mylib.b.do_other()
22
+ // @filename: nestedlib/__init__.py
23
+ ////
24
+ // @filename: nestedlib/alpha/__init__.py
25
+ ////
26
+ // @filename: nestedlib/alpha/left.py
27
+ //// def left_func() -> None:
28
+ //// pass
29
+ // @filename: nestedlib/alpha/right.py
30
+ //// def right_func() -> None:
31
+ //// pass
32
+ // @filename: nested_common.py
33
+ //// import nestedlib.alpha.right
34
+ // @filename: nested_clone_test.py
35
+ //// from nested_common import *
36
+ ////
37
+ //// nestedlib.alpha.right.right_func()
38
+ // @filename: nested_merge_test.py
39
+ //// import nestedlib.alpha.left
40
+ ////
41
+ //// from nested_common import *
42
+ ////
43
+ //// nestedlib.alpha.left.left_func()
44
+ //// nestedlib.alpha.right.right_func()
45
+ helper.verifyDiagnostics();
46
+ //# sourceMappingURL=import.multipart3.fourslash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.multipart3.fourslash.js","sourceRoot":"","sources":["../../../../../../src/tests/fourslash/import.multipart3.fourslash.ts"],"names":[],"mappings":";AAAA,+CAA+C;;AAE/C,+BAA+B;AAC/B,IAAI;AAEJ,wBAAwB;AACxB,0CAA0C;AAC1C,aAAa;AAEb,wBAAwB;AACxB,4BAA4B;AAC5B,aAAa;AAEb,iCAAiC;AACjC,mBAAmB;AACnB,gBAAgB;AAEhB,qBAAqB;AACrB,mBAAmB;AACnB,IAAI;AACJ,mCAAmC;AACnC,IAAI;AACJ,8BAA8B;AAC9B,uBAAuB;AAEvB,mCAAmC;AACnC,IAAI;AAEJ,yCAAyC;AACzC,IAAI;AAEJ,qCAAqC;AACrC,6BAA6B;AAC7B,aAAa;AAEb,sCAAsC;AACtC,8BAA8B;AAC9B,aAAa;AAEb,8BAA8B;AAC9B,iCAAiC;AAEjC,kCAAkC;AAClC,gCAAgC;AAChC,IAAI;AACJ,uCAAuC;AAEvC,kCAAkC;AAClC,gCAAgC;AAChC,IAAI;AACJ,gCAAgC;AAChC,IAAI;AACJ,qCAAqC;AACrC,uCAAuC;AAEvC,MAAM,CAAC,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ /// <reference path="typings/fourslash.d.ts" />
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ // @filename: pyrightconfig.json
5
+ //// {
6
+ //// "typeCheckingMode": "basic"
7
+ //// }
8
+ // @filename: testLib/py.typed
9
+ // @library: true
10
+ ////
11
+ // @filename: testLib/_internal.py
12
+ // @library: true
13
+ //// GraphClass: int = 1
14
+ // @filename: testLib/__init__.py
15
+ // @library: true
16
+ //// from ._internal import GraphClass
17
+ ////
18
+ //// # Simulate dynamic __all__ construction like dash.dcc does:
19
+ //// # __all__ = _components + ["other_symbol"]
20
+ //// # where _components comes from a wildcard import
21
+ //// _components = ["GraphClass"]
22
+ //// __all__ = _components + ["other_symbol"]
23
+ // @filename: .src/test1.py
24
+ //// # pyright: reportPrivateUsage=true, reportPrivateImportUsage=true
25
+ //// # This should NOT show an error because __all__ uses an unsupported form,
26
+ //// # so we can't determine if GraphClass is actually in __all__ or not.
27
+ //// # Since the module uses a dynamic __all__, we should be permissive.
28
+ //// from testLib import GraphClass
29
+ //// import testLib
30
+ //// testLib.GraphClass
31
+ // @ts-ignore
32
+ await helper.verifyDiagnostics({});
33
+ //# sourceMappingURL=import.pytyped.unsupportedDunderAll.fourslash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.pytyped.unsupportedDunderAll.fourslash.js","sourceRoot":"","sources":["../../../../../../src/tests/fourslash/import.pytyped.unsupportedDunderAll.fourslash.ts"],"names":[],"mappings":";AAAA,+CAA+C;;AAE/C,gCAAgC;AAChC,MAAM;AACN,kCAAkC;AAClC,MAAM;AAEN,8BAA8B;AAC9B,iBAAiB;AACjB,IAAI;AAEJ,kCAAkC;AAClC,iBAAiB;AACjB,wBAAwB;AAExB,iCAAiC;AACjC,iBAAiB;AACjB,sCAAsC;AACtC,IAAI;AACJ,gEAAgE;AAChE,+CAA+C;AAC/C,qDAAqD;AACrD,iCAAiC;AACjC,6CAA6C;AAE7C,2BAA2B;AAC3B,sEAAsE;AACtE,8EAA8E;AAC9E,yEAAyE;AACzE,wEAAwE;AACxE,mCAAmC;AACnC,mBAAmB;AACnB,uBAAuB;AAEvB,aAAa;AACb,MAAM,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { FourSlashData } from './fourSlashTypes';
2
- import { HostSpecificFeatures, TestState } from './testState';
3
- export type TestStateFactory = (basePath: string, testData: FourSlashData, mountPaths?: Map<string, string>, hostSpecificFeatures?: HostSpecificFeatures) => TestState;
2
+ import { TestState, TestStateOptions } from './testState';
3
+ export type TestStateFactory = (basePath: string, testData: FourSlashData, options?: TestStateOptions) => TestState;
4
4
  /**
5
5
  * run given fourslash test file
6
6
  *
7
7
  * @param basePath this is used as a base path of the virtual file system the test will run upon
8
8
  * @param fileName this is the file path where fourslash test file will be read from
9
9
  */
10
- export declare function runFourSlashTest(basePath: string, fileName: string, cb?: jest.DoneCallback, mountPaths?: Map<string, string>, hostSpecificFeatures?: HostSpecificFeatures, testStateFactory?: TestStateFactory): void;
10
+ export declare function runFourSlashTest(basePath: string, fileName: string, cb?: jest.DoneCallback, stateOptions?: TestStateOptions, testStateFactory?: TestStateFactory): void;
11
11
  /**
12
12
  * run given fourslash markup content
13
13
  *
@@ -16,4 +16,4 @@ export declare function runFourSlashTest(basePath: string, fileName: string, cb?
16
16
  * if fourslash markup `content` doesn't have explicit `@filename` option
17
17
  * @param content this is fourslash markup string
18
18
  */
19
- export declare function runFourSlashTestContent(basePath: string, fileName: string, content: string, cb?: jest.DoneCallback, mountPaths?: Map<string, string>, hostSpecificFeatures?: HostSpecificFeatures, testStateFactory?: TestStateFactory): void;
19
+ export declare function runFourSlashTestContent(basePath: string, fileName: string, content: string, cb?: jest.DoneCallback, stateOptions?: TestStateOptions, testStateFactory?: TestStateFactory): void;
@@ -44,9 +44,9 @@ const testState_Consts_1 = require("./testState.Consts");
44
44
  * @param basePath this is used as a base path of the virtual file system the test will run upon
45
45
  * @param fileName this is the file path where fourslash test file will be read from
46
46
  */
47
- function runFourSlashTest(basePath, fileName, cb, mountPaths, hostSpecificFeatures, testStateFactory) {
47
+ function runFourSlashTest(basePath, fileName, cb, stateOptions, testStateFactory) {
48
48
  const content = host.HOST.readFile(fileName);
49
- runFourSlashTestContent(basePath, fileName, content, cb, mountPaths, hostSpecificFeatures, testStateFactory);
49
+ runFourSlashTestContent(basePath, fileName, content, cb, stateOptions, testStateFactory);
50
50
  }
51
51
  /**
52
52
  * run given fourslash markup content
@@ -56,15 +56,15 @@ function runFourSlashTest(basePath, fileName, cb, mountPaths, hostSpecificFeatur
56
56
  * if fourslash markup `content` doesn't have explicit `@filename` option
57
57
  * @param content this is fourslash markup string
58
58
  */
59
- function runFourSlashTestContent(basePath, fileName, content, cb, mountPaths, hostSpecificFeatures, testStateFactory) {
59
+ function runFourSlashTestContent(basePath, fileName, content, cb, stateOptions, testStateFactory) {
60
60
  // give file paths an absolute path for the virtual file system
61
61
  const absoluteBasePath = (0, pathUtils_1.combinePaths)('/', basePath);
62
62
  const absoluteFileName = (0, pathUtils_1.combinePaths)('/', fileName);
63
63
  // parse out the files and their metadata
64
64
  const testData = (0, fourSlashParser_1.parseTestData)(absoluteBasePath, content, absoluteFileName);
65
65
  const state = testStateFactory !== undefined
66
- ? testStateFactory(absoluteBasePath, testData, mountPaths, hostSpecificFeatures)
67
- : new testState_1.TestState(absoluteBasePath, testData, mountPaths, hostSpecificFeatures);
66
+ ? testStateFactory(absoluteBasePath, testData, stateOptions)
67
+ : new testState_1.TestState(absoluteBasePath, testData, stateOptions);
68
68
  const output = ts.transpileModule(content, {
69
69
  reportDiagnostics: true,
70
70
  compilerOptions: { target: ts.ScriptTarget.ES2019 },
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../../../src/tests/harness/fourslash/runner.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;AAwBH,4CAUC;AAUD,0DA4BC;AAtED,+CAAiC;AAEjC,yDAAyD;AACzD,kDAAoC;AACpC,uDAAkD;AAElD,2CAA8D;AAC9D,yDAA4C;AAS5C;;;;;GAKG;AACH,SAAgB,gBAAgB,CAC5B,QAAgB,EAChB,QAAgB,EAChB,EAAsB,EACtB,UAAgC,EAChC,oBAA2C,EAC3C,gBAAmC;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAE,CAAC;IAC9C,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;AACjH,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CACnC,QAAgB,EAChB,QAAgB,EAChB,OAAe,EACf,EAAsB,EACtB,UAAgC,EAChC,oBAA2C,EAC3C,gBAAmC;IAEnC,+DAA+D;IAC/D,MAAM,gBAAgB,GAAG,IAAA,wBAAY,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAA,wBAAY,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAErD,yCAAyC;IACzC,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC5E,MAAM,KAAK,GACP,gBAAgB,KAAK,SAAS;QAC1B,CAAC,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,oBAAoB,CAAC;QAChF,CAAC,CAAC,IAAI,qBAAS,CAAC,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE;QACvC,iBAAiB,EAAE,IAAI;QACvB,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE;KACtD,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,WAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,gBAAgB,KAAK,MAAM,CAAC,WAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,IAAY,EAAE,KAAgB,EAAE,EAAsB;IACzE,+BAA+B;IAC/B,IAAI,CAAC;QACD,MAAM,WAAW,GAAG;EAC1B,IAAI;GACH,CAAC;QACI,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,6DAA6D;QAC1F,MAAM,CAAC,CAAC,KAAK,EAAE,yBAAM,CAAC,CAAC;QACvB,QAAQ,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACV,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,SAAS,QAAQ,CAAC,GAAG,IAAW;QAC5B,IAAI,EAAE,EAAE,CAAC;YACL,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,KAAK,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../../../src/tests/harness/fourslash/runner.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;AAmBH,4CASC;AAUD,0DA2BC;AA/DD,+CAAiC;AAEjC,yDAAyD;AACzD,kDAAoC;AACpC,uDAAkD;AAElD,2CAA0D;AAC1D,yDAA4C;AAI5C;;;;;GAKG;AACH,SAAgB,gBAAgB,CAC5B,QAAgB,EAChB,QAAgB,EAChB,EAAsB,EACtB,YAA+B,EAC/B,gBAAmC;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAE,CAAC;IAC9C,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CACnC,QAAgB,EAChB,QAAgB,EAChB,OAAe,EACf,EAAsB,EACtB,YAA+B,EAC/B,gBAAmC;IAEnC,+DAA+D;IAC/D,MAAM,gBAAgB,GAAG,IAAA,wBAAY,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAA,wBAAY,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAErD,yCAAyC;IACzC,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC5E,MAAM,KAAK,GACP,gBAAgB,KAAK,SAAS;QAC1B,CAAC,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,YAAY,CAAC;QAC5D,CAAC,CAAC,IAAI,qBAAS,CAAC,gBAAgB,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE;QACvC,iBAAiB,EAAE,IAAI;QACvB,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE;KACtD,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,WAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,gBAAgB,KAAK,MAAM,CAAC,WAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,IAAY,EAAE,KAAgB,EAAE,EAAsB;IACzE,+BAA+B;IAC/B,IAAI,CAAC;QACD,MAAM,WAAW,GAAG;EAC1B,IAAI;GACH,CAAC;QACI,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,6DAA6D;QAC1F,MAAM,CAAC,CAAC,KAAK,EAAE,yBAAM,CAAC,CAAC;QACvB,QAAQ,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACV,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,SAAS,QAAQ,CAAC,GAAG,IAAW;QAC5B,IAAI,EAAE,EAAE,CAAC;YACL,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,KAAK,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC;AACL,CAAC"}
@@ -32,8 +32,18 @@ export interface HostSpecificFeatures {
32
32
  getCodeActionsForPosition(workspace: Workspace, fileUri: Uri, range: PositionRange, token: CancellationToken): Promise<CodeAction[]>;
33
33
  execute(ls: LanguageServerInterface, params: ExecuteCommandParams, token: CancellationToken): Promise<any>;
34
34
  }
35
+ export interface TestStateOptions {
36
+ mountPaths?: Map<string, string>;
37
+ hostSpecificFeatures?: HostSpecificFeatures;
38
+ testFS?: vfs.TestFileSystem;
39
+ delayFileInitialization?: boolean;
40
+ enablePartialStub?: boolean;
41
+ enableSharedImportResolverFileSystem?: boolean;
42
+ enableSharedTypeshedInfoProvider?: boolean;
43
+ }
35
44
  export declare class TestState {
36
45
  testData: FourSlashData;
46
+ protected options?: TestStateOptions | undefined;
37
47
  private readonly _cancellationToken;
38
48
  private readonly _vfsFiles;
39
49
  protected readonly files: string[];
@@ -48,7 +58,7 @@ export declare class TestState {
48
58
  selectionEnd: number;
49
59
  lastKnownMarker: string;
50
60
  activeFile: FourSlashFile;
51
- constructor(projectRoot: string, testData: FourSlashData, mountPaths?: Map<string, string>, hostSpecificFeatures?: HostSpecificFeatures, testFS?: vfs.TestFileSystem, delayFileInitialization?: boolean);
61
+ constructor(projectRoot: string, testData: FourSlashData, options?: TestStateOptions | undefined);
52
62
  get importResolver(): ImportResolver;
53
63
  get configOptions(): ConfigOptions;
54
64
  get program(): Program;
@@ -182,15 +192,20 @@ export declare class TestState {
182
192
  references: DocumentHighlight[];
183
193
  };
184
194
  }): void;
185
- fixupDefinitionsToMatchExpected(actual: DocumentRange[] | undefined): any;
186
195
  verifyFindDefinitions(map: {
187
196
  [marker: string]: {
188
- definitions: DocumentRange[];
197
+ definitions: {
198
+ path: string;
199
+ range: PositionRange;
200
+ }[];
189
201
  };
190
202
  }, filter?: DefinitionFilter): void;
191
203
  verifyFindTypeDefinitions(map: {
192
204
  [marker: string]: {
193
- definitions: DocumentRange[];
205
+ definitions: {
206
+ path: string;
207
+ range: PositionRange;
208
+ }[];
194
209
  };
195
210
  }): void;
196
211
  verifyRename(map: {
@@ -252,7 +267,7 @@ export declare class TestState {
252
267
  private _verifyEdit;
253
268
  private _verifyEdits;
254
269
  }
255
- export declare function parseAndGetTestState(code: string, projectRoot?: string, anonymousFileName?: string, testFS?: vfs.TestFileSystem): {
270
+ export declare function parseAndGetTestState(code: string, projectRoot?: string, anonymousFileName?: string, options?: TestStateOptions): {
256
271
  data: FourSlashData;
257
272
  state: TestState;
258
273
  };
@@ -86,18 +86,16 @@ const workspaceEditTestUtils_1 = require("./workspaceEditTestUtils");
86
86
  // Make sure everything is in lower case since it has hard coded `isCaseSensitive`: true.
87
87
  const testAccessHost = new testAccessHost_1.TestAccessHost(uriUtils_1.UriEx.file(vfs.MODULE_PATH), [factory_1.libFolder, factory_1.distlibFolder]);
88
88
  class TestState {
89
- constructor(projectRoot, testData, mountPaths, hostSpecificFeatures, testFS,
90
- // Setting delayFileInitialization to true enables derived class constructors to execute
91
- // before any files are opened. When set to true, initializeFiles() must be called separately
92
- // after construction completes.
93
- delayFileInitialization = false) {
89
+ constructor(projectRoot, testData, options) {
94
90
  this.testData = testData;
91
+ this.options = options;
95
92
  this.files = [];
96
93
  // The current caret position in the active file
97
94
  this.currentCaretPosition = 0;
98
95
  // The position of the end of the current selection, or -1 if nothing is selected
99
96
  this.selectionEnd = -1;
100
97
  this.lastKnownMarker = '';
98
+ const { mountPaths, hostSpecificFeatures, testFS, delayFileInitialization = false } = options ?? {};
101
99
  const vfsInfo = (0, testStateUtils_1.createVfsInfoFromFourSlashData)(projectRoot, testData);
102
100
  this._vfsFiles = vfsInfo.files;
103
101
  this.testFS =
@@ -105,7 +103,7 @@ class TestState {
105
103
  (0, factory_1.createFromFileSystem)(host.HOST, vfsInfo.ignoreCase, { cwd: vfsInfo.projectRoot, files: vfsInfo.files, meta: testData.globalOptions }, mountPaths);
106
104
  this.fs = new pyrightFileSystem_1.PyrightFileSystem(this.testFS);
107
105
  this.console = new console_1.ConsoleWithLogLevel(new console_1.NullConsole(), 'test');
108
- const ps = new partialStubService_1.PartialStubService(this.fs);
106
+ const ps = options?.enablePartialStub ? new partialStubService_1.PartialStubService(this.fs) : new partialStubService_1.NoOpPartialStubs();
109
107
  this.serviceProvider = (0, serviceProviderExtensions_1.createServiceProvider)(this.testFS, this.fs, this.console, ps);
110
108
  this._cancellationToken = new fourSlashTypes_1.TestCancellationToken();
111
109
  this._hostSpecificFeatures = hostSpecificFeatures ?? new testLanguageService_1.TestFeatures();
@@ -939,15 +937,6 @@ class TestState {
939
937
  }
940
938
  }
941
939
  }
942
- fixupDefinitionsToMatchExpected(actual) {
943
- return actual?.map((a) => {
944
- const { uri, ...restOfActual } = a;
945
- return {
946
- ...restOfActual,
947
- path: uri.getFilePath(),
948
- };
949
- });
950
- }
951
940
  verifyFindDefinitions(map, filter = definitionProvider_1.DefinitionFilter.All) {
952
941
  this.analyze();
953
942
  for (const marker of this.getMarkers()) {
@@ -966,11 +955,10 @@ class TestState {
966
955
  }
967
956
  }
968
957
  const position = this.convertOffsetToPosition(fileName, marker.position);
969
- let actual = new definitionProvider_1.DefinitionProvider(this.program, uri, position, filter, vscode_languageserver_1.CancellationToken.None).getDefinitions();
958
+ const actual = new definitionProvider_1.DefinitionProvider(this.program, uri, position, filter, vscode_languageserver_1.CancellationToken.None).getDefinitions();
970
959
  assert_1.default.equal(actual?.length ?? 0, expected.length, `No definitions found for marker "${name}"`);
971
- actual = this.fixupDefinitionsToMatchExpected(actual);
972
960
  for (const r of expected) {
973
- assert_1.default.equal(actual?.filter((d) => this._deepEqual(d, r)).length, 1, `No match found for ${JSON.stringify(r)} from marker ${name}`);
961
+ assert_1.default.equal(actual?.filter((d) => d.uri.equals(uri_1.Uri.file(r.path, this.serviceProvider)) && this._deepEqual(d.range, r.range)).length, 1, `No match found for ${JSON.stringify(r)} from marker ${name}`);
974
962
  }
975
963
  }
976
964
  }
@@ -984,11 +972,10 @@ class TestState {
984
972
  }
985
973
  const expected = map[name].definitions;
986
974
  const position = this.convertOffsetToPosition(fileName, marker.position);
987
- let actual = new definitionProvider_1.TypeDefinitionProvider(this.program, uri_1.Uri.file(fileName, this.serviceProvider), position, vscode_languageserver_1.CancellationToken.None).getDefinitions();
988
- actual = this.fixupDefinitionsToMatchExpected(actual);
975
+ const actual = new definitionProvider_1.TypeDefinitionProvider(this.program, uri_1.Uri.file(fileName, this.serviceProvider), position, vscode_languageserver_1.CancellationToken.None).getDefinitions();
989
976
  assert_1.default.strictEqual(actual?.length ?? 0, expected.length, name);
990
977
  for (const r of expected) {
991
- assert_1.default.strictEqual(actual?.filter((d) => this._deepEqual(d, r)).length, 1, name);
978
+ assert_1.default.strictEqual(actual?.filter((d) => d.uri.equals(uri_1.Uri.file(r.path, this.serviceProvider)) && this._deepEqual(d.range, r.range)).length, 1, name);
992
979
  }
993
980
  }
994
981
  }
@@ -1200,7 +1187,7 @@ class TestState {
1200
1187
  }
1201
1188
  }
1202
1189
  if (configOptions.functionSignatureDisplay === undefined) {
1203
- configOptions.functionSignatureDisplay === configOptions_1.SignatureDisplayType.compact;
1190
+ configOptions.functionSignatureDisplay = configOptions_1.SignatureDisplayType.compact;
1204
1191
  }
1205
1192
  return configOptions;
1206
1193
  }
@@ -1444,11 +1431,9 @@ class TestState {
1444
1431
  }
1445
1432
  }
1446
1433
  exports.TestState = TestState;
1447
- function parseAndGetTestState(code, projectRoot = '/', anonymousFileName = 'unnamedFile.py', testFS) {
1434
+ function parseAndGetTestState(code, projectRoot = '/', anonymousFileName = 'unnamedFile.py', options) {
1448
1435
  const data = (0, fourSlashParser_1.parseTestData)((0, pathUtils_1.normalizeSlashes)(projectRoot), code, anonymousFileName);
1449
- const state = new TestState((0, pathUtils_1.normalizeSlashes)('/'), data,
1450
- /* mountPath */ undefined,
1451
- /* hostSpecificFeatures */ undefined, testFS);
1436
+ const state = new TestState((0, pathUtils_1.normalizeSlashes)('/'), data, options);
1452
1437
  return { data, state };
1453
1438
  }
1454
1439
  function getNodeForRange(codeOrState, markerName = 'marker') {