@zzzen/pyright-internal 1.2.0-dev.20230212 → 1.2.0-dev.20230219
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/backgroundAnalysisProgram.d.ts +1 -0
- package/dist/analyzer/backgroundAnalysisProgram.js +5 -0
- package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
- package/dist/analyzer/checker.js +7 -4
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/commentUtils.d.ts +6 -1
- package/dist/analyzer/commentUtils.js +100 -25
- package/dist/analyzer/commentUtils.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +1 -0
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/importStatementUtils.d.ts +1 -0
- package/dist/analyzer/importStatementUtils.js +14 -1
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.d.ts +5 -2
- package/dist/analyzer/parseTreeUtils.js +21 -3
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +25 -5
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +9 -2
- package/dist/analyzer/program.js +106 -8
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/service.d.ts +1 -4
- package/dist/analyzer/service.js +16 -36
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +4 -0
- package/dist/analyzer/sourceFile.js +82 -16
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +43 -15
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +2 -1
- package/dist/backgroundAnalysisBase.js +15 -1
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.js +1 -0
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/common/commandLineOptions.d.ts +2 -0
- package/dist/common/commandLineOptions.js.map +1 -1
- package/dist/common/configOptions.d.ts +3 -0
- package/dist/common/configOptions.js +10 -1
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/core.d.ts +2 -0
- package/dist/common/core.js +9 -1
- package/dist/common/core.js.map +1 -1
- package/dist/common/diagnostic.d.ts +15 -3
- package/dist/common/diagnostic.js +13 -4
- package/dist/common/diagnostic.js.map +1 -1
- package/dist/common/editAction.d.ts +1 -0
- package/dist/common/editAction.js +8 -0
- package/dist/common/editAction.js.map +1 -1
- package/dist/common/extensibility.d.ts +34 -11
- package/dist/common/extensibility.js +63 -18
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/pathUtils.d.ts +3 -0
- package/dist/common/pathUtils.js +18 -0
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/textEditUtils.d.ts +26 -9
- package/dist/common/textEditUtils.js +218 -41
- package/dist/common/textEditUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +3 -0
- package/dist/languageServerBase.js +90 -1
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/analyzerServiceExecutor.js +1 -0
- package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
- package/dist/languageService/definitionProvider.js +1 -1
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +1 -1
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/hoverProvider.js +10 -6
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/importAdder.d.ts +4 -0
- package/dist/languageService/importAdder.js +50 -13
- package/dist/languageService/importAdder.js.map +1 -1
- package/dist/languageService/insertionPointUtils.js +28 -7
- package/dist/languageService/insertionPointUtils.js.map +1 -1
- package/dist/languageService/renameModuleProvider.d.ts +12 -10
- package/dist/languageService/renameModuleProvider.js +240 -229
- package/dist/languageService/renameModuleProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +9 -0
- package/dist/localization/localize.js +5 -0
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +7 -1
- package/dist/tests/checker.test.js +5 -0
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/fourslash/hover.inferred.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/hover.inferred.fourslash.js +24 -0
- package/dist/tests/fourslash/hover.inferred.fourslash.js.map +1 -0
- package/dist/tests/importAdder.test.js +39 -2
- package/dist/tests/importAdder.test.js.map +1 -1
- package/dist/tests/insertionPointUtils.test.js +70 -3
- package/dist/tests/insertionPointUtils.test.js.map +1 -1
- package/dist/tests/{updateSymbolReference.test.d.ts → moveSymbol.importAdder.test.d.ts} +0 -0
- package/dist/tests/moveSymbol.importAdder.test.js +139 -0
- package/dist/tests/moveSymbol.importAdder.test.js.map +1 -0
- package/dist/tests/moveSymbol.insertion.test.d.ts +1 -0
- package/dist/tests/moveSymbol.insertion.test.js +360 -0
- package/dist/tests/moveSymbol.insertion.test.js.map +1 -0
- package/dist/tests/moveSymbol.misc.test.d.ts +1 -0
- package/dist/tests/moveSymbol.misc.test.js +37 -0
- package/dist/tests/moveSymbol.misc.test.js.map +1 -0
- package/dist/tests/moveSymbol.updateReference.test.d.ts +1 -0
- package/dist/tests/{updateSymbolReference.test.js → moveSymbol.updateReference.test.js} +235 -158
- package/dist/tests/moveSymbol.updateReference.test.js.map +1 -0
- package/dist/tests/parseTreeUtils.test.js +36 -13
- package/dist/tests/parseTreeUtils.test.js.map +1 -1
- package/dist/tests/renameModuleTestUtils.js +9 -3
- package/dist/tests/renameModuleTestUtils.js.map +1 -1
- package/dist/tests/testStateUtils.d.ts +2 -0
- package/dist/tests/testStateUtils.js +25 -22
- package/dist/tests/testStateUtils.js.map +1 -1
- package/dist/tests/textEditUtil.test.d.ts +1 -0
- package/dist/tests/textEditUtil.test.js +107 -0
- package/dist/tests/textEditUtil.test.js.map +1 -0
- package/dist/tests/typeEvaluator4.test.js +4 -0
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/workspaceMap.d.ts +0 -1
- package/dist/workspaceMap.js +0 -11
- package/dist/workspaceMap.js.map +1 -1
- package/package.json +1 -1
- package/dist/tests/updateSymbolReference.test.js.map +0 -1
@@ -0,0 +1,360 @@
|
|
1
|
+
"use strict";
|
2
|
+
/*
|
3
|
+
* moveSymbol.trivia.test.ts
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
5
|
+
* Licensed under the MIT license.
|
6
|
+
*
|
7
|
+
* Tests around how moveSymbol handles whitespace/blank lines/comments around
|
8
|
+
* symbol that is moved.
|
9
|
+
*/
|
10
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
11
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
12
|
+
};
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
+
const assert_1 = __importDefault(require("assert"));
|
15
|
+
const vscode_languageserver_1 = require("vscode-languageserver");
|
16
|
+
const testState_1 = require("./harness/fourslash/testState");
|
17
|
+
const renameModuleTestUtils_1 = require("./renameModuleTestUtils");
|
18
|
+
test('single symbol with trailing whitespace', () => {
|
19
|
+
const code = `
|
20
|
+
// @filename: test.py
|
21
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
22
|
+
//// pass
|
23
|
+
//// |]
|
24
|
+
////
|
25
|
+
|
26
|
+
// @filename: moved.py
|
27
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
28
|
+
`;
|
29
|
+
testFromCode(code);
|
30
|
+
});
|
31
|
+
test('begining of a file with other symbols below', () => {
|
32
|
+
const code = `
|
33
|
+
// @filename: test.py
|
34
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
35
|
+
//// pass
|
36
|
+
////
|
37
|
+
//// |]def nextFoo():
|
38
|
+
//// pass
|
39
|
+
|
40
|
+
// @filename: moved.py
|
41
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
42
|
+
`;
|
43
|
+
testFromCode(code);
|
44
|
+
});
|
45
|
+
test('at the end of a file with other symbols above', () => {
|
46
|
+
const code = `
|
47
|
+
// @filename: test.py
|
48
|
+
//// def beforeFoo():
|
49
|
+
//// pass
|
50
|
+
////
|
51
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
52
|
+
//// pass|]
|
53
|
+
|
54
|
+
// @filename: moved.py
|
55
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
56
|
+
`;
|
57
|
+
testFromCode(code);
|
58
|
+
});
|
59
|
+
test('between symbols', () => {
|
60
|
+
const code = `
|
61
|
+
// @filename: test.py
|
62
|
+
//// def beforeFoo():
|
63
|
+
//// pass
|
64
|
+
////
|
65
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
66
|
+
//// pass
|
67
|
+
////
|
68
|
+
////
|
69
|
+
//// |]def afterFoo():
|
70
|
+
//// pass
|
71
|
+
////
|
72
|
+
|
73
|
+
// @filename: moved.py
|
74
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
75
|
+
`;
|
76
|
+
testFromCode(code);
|
77
|
+
});
|
78
|
+
test('insert to empty file', () => {
|
79
|
+
const code = `
|
80
|
+
// @filename: test.py
|
81
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
82
|
+
//// pass|]
|
83
|
+
|
84
|
+
// @filename: moved.py
|
85
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
86
|
+
`;
|
87
|
+
testFromCode(code);
|
88
|
+
});
|
89
|
+
test('insert to empty file with blank lines', () => {
|
90
|
+
const code = `
|
91
|
+
// @filename: test.py
|
92
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
93
|
+
//// pass|]
|
94
|
+
|
95
|
+
// @filename: moved.py
|
96
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
97
|
+
////
|
98
|
+
////
|
99
|
+
`;
|
100
|
+
testFromCode(code);
|
101
|
+
});
|
102
|
+
test('insert to empty file with comments', () => {
|
103
|
+
const code = `
|
104
|
+
// @filename: test.py
|
105
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
106
|
+
//// pass|]
|
107
|
+
|
108
|
+
// @filename: moved.py
|
109
|
+
//// # comment
|
110
|
+
//// [|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
111
|
+
`;
|
112
|
+
testFromCode(code);
|
113
|
+
});
|
114
|
+
test('insert to empty file with comments and blank lines', () => {
|
115
|
+
const code = `
|
116
|
+
// @filename: test.py
|
117
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
118
|
+
//// pass|]
|
119
|
+
|
120
|
+
// @filename: moved.py
|
121
|
+
//// # comment
|
122
|
+
//// [|{|"r":"!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
123
|
+
////
|
124
|
+
`;
|
125
|
+
testFromCode(code);
|
126
|
+
});
|
127
|
+
test('insert after other symbol', () => {
|
128
|
+
const code = `
|
129
|
+
// @filename: test.py
|
130
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
131
|
+
//// pass|]
|
132
|
+
|
133
|
+
// @filename: moved.py
|
134
|
+
//// def beforeFoo():
|
135
|
+
//// pass[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
136
|
+
`;
|
137
|
+
testFromCode(code);
|
138
|
+
});
|
139
|
+
test('insert between symbols', () => {
|
140
|
+
const code = `
|
141
|
+
// @filename: test.py
|
142
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
143
|
+
//// pass|]
|
144
|
+
|
145
|
+
// @filename: moved.py
|
146
|
+
//// def beforeFoo():
|
147
|
+
//// pass[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
148
|
+
////
|
149
|
+
//// def __privateFunc():
|
150
|
+
//// pass
|
151
|
+
`;
|
152
|
+
testFromCode(code);
|
153
|
+
});
|
154
|
+
test('no insert with conflicting name', () => {
|
155
|
+
const code = `
|
156
|
+
// @filename: test.py
|
157
|
+
//// def [|/*marker*/foo|]():
|
158
|
+
//// pass
|
159
|
+
|
160
|
+
// @filename: moved.py
|
161
|
+
//// # same name already exist
|
162
|
+
//// [|/*dest*/|]
|
163
|
+
//// def foo():
|
164
|
+
//// pass
|
165
|
+
`;
|
166
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
167
|
+
const actions = state.program.moveSymbolAtPosition(state.getMarkerByName('marker').fileName, state.getMarkerByName('dest').fileName, state.getPositionRange('marker').start, { importFormat: "absolute" /* Absolute */ }, vscode_languageserver_1.CancellationToken.None);
|
168
|
+
(0, assert_1.default)(!actions);
|
169
|
+
});
|
170
|
+
test('insert to a file with same symbol imported without alias', () => {
|
171
|
+
const code = `
|
172
|
+
// @filename: test.py
|
173
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
174
|
+
//// pass|]
|
175
|
+
|
176
|
+
// @filename: moved.py
|
177
|
+
//// [|{|"r":""|}from test import foo
|
178
|
+
//// |]import os[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
179
|
+
`;
|
180
|
+
testFromCode(code);
|
181
|
+
});
|
182
|
+
test('insert to a file with same symbol imported with multiple symbol imports', () => {
|
183
|
+
const code = `
|
184
|
+
// @filename: test.py
|
185
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
186
|
+
//// pass
|
187
|
+
////
|
188
|
+
//// |]def bar():
|
189
|
+
//// pass
|
190
|
+
|
191
|
+
// @filename: moved.py
|
192
|
+
//// from test import bar[|{|"r":""|}, foo|][|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
193
|
+
`;
|
194
|
+
testFromCode(code);
|
195
|
+
});
|
196
|
+
test('insert to a file with same symbol used off import', () => {
|
197
|
+
const code = `
|
198
|
+
// @filename: test.py
|
199
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
200
|
+
//// pass|]
|
201
|
+
|
202
|
+
// @filename: moved.py
|
203
|
+
//// [|{|"r":""|}import test
|
204
|
+
//// |]import os[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
205
|
+
////
|
206
|
+
//// [|{|"r":""|}test.|]foo()
|
207
|
+
`;
|
208
|
+
testFromCode(code);
|
209
|
+
});
|
210
|
+
test('insert to a file with same symbol used off import with edit merge', () => {
|
211
|
+
const code = `
|
212
|
+
// @filename: test.py
|
213
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
214
|
+
//// pass|]
|
215
|
+
|
216
|
+
// @filename: moved.py
|
217
|
+
//// [|{|"r":""|}import test[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
218
|
+
//// |]
|
219
|
+
////
|
220
|
+
//// [|{|"r":""|}test.|]foo()
|
221
|
+
`;
|
222
|
+
testFromCode(code);
|
223
|
+
});
|
224
|
+
test('insert to a file with same symbol used off import with alias', () => {
|
225
|
+
const code = `
|
226
|
+
// @filename: test.py
|
227
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
228
|
+
//// pass|]
|
229
|
+
|
230
|
+
// @filename: moved.py
|
231
|
+
//// [|{|"r":""|}import test as t
|
232
|
+
//// |]import os[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
233
|
+
////
|
234
|
+
//// [|{|"r":""|}t.|]foo()
|
235
|
+
|
236
|
+
`;
|
237
|
+
testFromCode(code);
|
238
|
+
});
|
239
|
+
test('insert to a file with same symbol used off import with other symbols', () => {
|
240
|
+
const code = `
|
241
|
+
// @filename: test.py
|
242
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
243
|
+
//// pass
|
244
|
+
////
|
245
|
+
//// |]def bar():
|
246
|
+
//// pass
|
247
|
+
|
248
|
+
// @filename: moved.py
|
249
|
+
//// import test[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
250
|
+
////
|
251
|
+
//// [|{|"r":""|}test.|]foo()
|
252
|
+
//// test.bar()
|
253
|
+
`;
|
254
|
+
testFromCode(code);
|
255
|
+
});
|
256
|
+
test('insert to a file with same symbol used off from import', () => {
|
257
|
+
const code = `
|
258
|
+
// @filename: test.py
|
259
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
260
|
+
//// pass|]
|
261
|
+
|
262
|
+
// @filename: moved.py
|
263
|
+
//// [|{|"r":""|}from . import test
|
264
|
+
//// |]import os[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
265
|
+
////
|
266
|
+
//// [|{|"r":""|}test.|]foo()
|
267
|
+
`;
|
268
|
+
testFromCode(code);
|
269
|
+
});
|
270
|
+
test('insert to a file with same symbol imported with alias', () => {
|
271
|
+
const code = `
|
272
|
+
// @filename: test.py
|
273
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
274
|
+
//// pass|]
|
275
|
+
|
276
|
+
// @filename: moved.py
|
277
|
+
//// from [|{|"r":"moved"|}test|] import foo as aliasFoo
|
278
|
+
////
|
279
|
+
//// aliasFoo()[|{|"r":"!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
280
|
+
`;
|
281
|
+
testFromCode(code);
|
282
|
+
});
|
283
|
+
test('insert to a file with same symbol imported and used', () => {
|
284
|
+
const code = `
|
285
|
+
// @filename: test.py
|
286
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
287
|
+
//// pass|]
|
288
|
+
|
289
|
+
// @filename: moved.py
|
290
|
+
//// [|{|"r":""|}from test import foo
|
291
|
+
//// |]import os[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
292
|
+
////
|
293
|
+
//// foo()
|
294
|
+
`;
|
295
|
+
testFromCode(code);
|
296
|
+
});
|
297
|
+
test('insert to a file with same symbol used off import with alias and used', () => {
|
298
|
+
const code = `
|
299
|
+
// @filename: test.py
|
300
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
301
|
+
//// pass
|
302
|
+
//// |]def bar():
|
303
|
+
//// pass
|
304
|
+
|
305
|
+
// @filename: moved.py
|
306
|
+
//// import test as t[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
307
|
+
////
|
308
|
+
//// [|{|"r":""|}t.|]foo()
|
309
|
+
//// t.bar()
|
310
|
+
`;
|
311
|
+
testFromCode(code);
|
312
|
+
});
|
313
|
+
test('insert import to original file for usage', () => {
|
314
|
+
const code = `
|
315
|
+
// @filename: test.py
|
316
|
+
//// [|{|"r":"from moved import foo!n!!n!!n!"|}|][|{|"r":""|}def [|/*marker*/foo|]():
|
317
|
+
//// pass
|
318
|
+
//// |]foo()
|
319
|
+
|
320
|
+
// @filename: moved.py
|
321
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
322
|
+
`;
|
323
|
+
testFromCode(code);
|
324
|
+
});
|
325
|
+
test('insert import name to the existing import in the original file for usage', () => {
|
326
|
+
const code = `
|
327
|
+
// @filename: test.py
|
328
|
+
//// from moved import bar[|{|"r":", foo"|}|]
|
329
|
+
////
|
330
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
331
|
+
//// pass
|
332
|
+
//// |]foo()
|
333
|
+
|
334
|
+
// @filename: moved.py
|
335
|
+
//// def bar():
|
336
|
+
//// pass[|{|"r":"!n!!n!!n!def foo():!n! pass", "name": "dest"|}|]
|
337
|
+
`;
|
338
|
+
testFromCode(code);
|
339
|
+
});
|
340
|
+
test('original file has import for the symbol with alias', () => {
|
341
|
+
const code = `
|
342
|
+
// @filename: test.py
|
343
|
+
//// from [|{|"r": "moved"|}test|] import foo as aliasFoo
|
344
|
+
////
|
345
|
+
//// aliasFoo()
|
346
|
+
////
|
347
|
+
//// [|{|"r":""|}def [|/*marker*/foo|]():
|
348
|
+
//// pass
|
349
|
+
//// |]
|
350
|
+
|
351
|
+
// @filename: moved.py
|
352
|
+
//// [|{|"r":"def foo():!n! pass", "name": "dest"|}|]
|
353
|
+
`;
|
354
|
+
testFromCode(code);
|
355
|
+
});
|
356
|
+
function testFromCode(code) {
|
357
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
358
|
+
(0, renameModuleTestUtils_1.testMoveSymbolAtPosition)(state, state.getMarkerByName('marker').fileName, state.getMarkerByName('dest').fileName, state.getPositionRange('marker').start);
|
359
|
+
}
|
360
|
+
//# sourceMappingURL=moveSymbol.insertion.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"moveSymbol.insertion.test.js","sourceRoot":"","sources":["../../../src/tests/moveSymbol.insertion.test.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,37 @@
|
|
1
|
+
"use strict";
|
2
|
+
/*
|
3
|
+
* moveSymbol.misc.test.ts
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
5
|
+
* Licensed under the MIT license.
|
6
|
+
*
|
7
|
+
* Misc tests around move symbol.
|
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 vscode_languageserver_1 = require("vscode-languageserver");
|
15
|
+
const testState_1 = require("./harness/fourslash/testState");
|
16
|
+
test('source and destnation file must have same ext', () => {
|
17
|
+
const code = `
|
18
|
+
// @filename: test.py
|
19
|
+
//// def [|/*marker*/foo|](): pass
|
20
|
+
|
21
|
+
// @filename: moved.pyi
|
22
|
+
//// [|/*dest*/|]
|
23
|
+
`;
|
24
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
25
|
+
const actions = state.program.moveSymbolAtPosition(state.getMarkerByName('marker').fileName, state.getMarkerByName('dest').fileName, state.getPositionRange('marker').start, { importFormat: "absolute" /* Absolute */ }, vscode_languageserver_1.CancellationToken.None);
|
26
|
+
(0, assert_1.default)(!actions);
|
27
|
+
});
|
28
|
+
test('source and destnation file can not be same', () => {
|
29
|
+
const code = `
|
30
|
+
// @filename: test.py
|
31
|
+
//// [|/*dest*/|]def [|/*marker*/foo|](): pass
|
32
|
+
`;
|
33
|
+
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
34
|
+
const actions = state.program.moveSymbolAtPosition(state.getMarkerByName('marker').fileName, state.getMarkerByName('dest').fileName, state.getPositionRange('marker').start, { importFormat: "absolute" /* Absolute */ }, vscode_languageserver_1.CancellationToken.None);
|
35
|
+
(0, assert_1.default)(!actions);
|
36
|
+
});
|
37
|
+
//# sourceMappingURL=moveSymbol.misc.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"moveSymbol.misc.test.js","sourceRoot":"","sources":["../../../src/tests/moveSymbol.misc.test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAEH,oDAA4B;AAC5B,iEAA0D;AAG1D,6DAAqE;AAErE,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACvD,MAAM,IAAI,GAAG;;;;;;SAMR,CAAC;IAEN,MAAM,KAAK,GAAG,IAAA,gCAAoB,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IAE/C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAC9C,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,QAAQ,EACxC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EACtC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,KAAK,EACtC,EAAE,YAAY,2BAAuB,EAAE,EACvC,yCAAiB,CAAC,IAAI,CACzB,CAAC;IACF,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,IAAI,GAAG;;;SAGR,CAAC;IAEN,MAAM,KAAK,GAAG,IAAA,gCAAoB,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IAE/C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAC9C,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,QAAQ,EACxC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EACtC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,KAAK,EACtC,EAAE,YAAY,2BAAuB,EAAE,EACvC,yCAAiB,CAAC,IAAI,CACzB,CAAC;IACF,IAAA,gBAAM,EAAC,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|