@zzzen/pyright-internal 1.2.0-dev.20230430 → 1.2.0-dev.20230514
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 +4 -1
- package/dist/analyzer/backgroundAnalysisProgram.js +12 -0
- package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
- package/dist/analyzer/checker.d.ts +1 -0
- package/dist/analyzer/checker.js +89 -6
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +14 -15
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/constructors.d.ts +6 -0
- package/dist/analyzer/constructors.js +513 -0
- package/dist/analyzer/constructors.js.map +1 -0
- package/dist/analyzer/dataClasses.js +86 -2
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/docStringConversion.js +1 -1
- package/dist/analyzer/docStringConversion.js.map +1 -1
- package/dist/analyzer/enums.js +62 -8
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/importResolver.js +47 -29
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/importStatementUtils.d.ts +2 -2
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/namedTuples.js +3 -6
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/operations.d.ts +16 -0
- package/dist/analyzer/operations.js +749 -0
- package/dist/analyzer/operations.js.map +1 -0
- package/dist/analyzer/parseTreeUtils.d.ts +4 -2
- package/dist/analyzer/parseTreeUtils.js +32 -1
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +16 -0
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.d.ts +11 -33
- package/dist/analyzer/program.js +73 -735
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/protocols.js +1 -1
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/service.d.ts +5 -21
- package/dist/analyzer/service.js +26 -33
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +9 -41
- package/dist/analyzer/sourceFile.js +219 -238
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/sourceFileInfoUtils.d.ts +3 -9
- package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
- package/dist/analyzer/symbol.d.ts +3 -1
- package/dist/analyzer/symbol.js +5 -0
- package/dist/analyzer/symbol.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +460 -1425
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +42 -7
- package/dist/analyzer/typeEvaluatorTypes.js +33 -1
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeGuards.js +2 -8
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.d.ts +3 -3
- package/dist/analyzer/typePrinter.js +247 -100
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +14 -7
- package/dist/analyzer/typeUtils.js +204 -49
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typeVarContext.d.ts +6 -7
- package/dist/analyzer/typeVarContext.js +21 -32
- package/dist/analyzer/typeVarContext.js.map +1 -1
- package/dist/analyzer/typedDicts.js +2 -2
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +7 -4
- package/dist/analyzer/types.js +20 -10
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +1 -1
- package/dist/backgroundAnalysisBase.js +16 -0
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/commands/dumpFileDebugInfoCommand.js +0 -1
- package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
- package/dist/common/extensibility.d.ts +28 -4
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/logTracker.d.ts +2 -0
- package/dist/common/logTracker.js +8 -1
- package/dist/common/logTracker.js.map +1 -1
- package/dist/common/lspUtils.d.ts +4 -1
- package/dist/common/lspUtils.js +38 -1
- package/dist/common/lspUtils.js.map +1 -1
- package/dist/common/pathUtils.d.ts +11 -11
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/pythonVersion.d.ts +2 -1
- package/dist/common/pythonVersion.js +1 -0
- package/dist/common/pythonVersion.js.map +1 -1
- package/dist/common/workspaceEditUtils.d.ts +8 -8
- package/dist/common/workspaceEditUtils.js +10 -10
- package/dist/common/workspaceEditUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +3 -7
- package/dist/languageServerBase.js +41 -73
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/autoImporter.d.ts +50 -51
- package/dist/languageService/autoImporter.js +125 -210
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.d.ts +1 -1
- package/dist/languageService/callHierarchyProvider.js +11 -37
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +39 -81
- package/dist/languageService/completionProvider.js +572 -801
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/documentHighlightProvider.js +1 -1
- package/dist/languageService/documentHighlightProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.d.ts +6 -7
- package/dist/languageService/documentSymbolCollector.js +47 -28
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.d.ts +13 -35
- package/dist/languageService/documentSymbolProvider.js +52 -264
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/hoverProvider.d.ts +5 -6
- package/dist/languageService/hoverProvider.js +40 -132
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/referencesProvider.d.ts +6 -11
- package/dist/languageService/referencesProvider.js +23 -17
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/renameProvider.d.ts +16 -0
- package/dist/languageService/renameProvider.js +139 -0
- package/dist/languageService/renameProvider.js.map +1 -0
- package/dist/languageService/symbolIndexer.d.ts +31 -0
- package/dist/languageService/symbolIndexer.js +105 -0
- package/dist/languageService/symbolIndexer.js.map +1 -0
- package/dist/languageService/tooltipUtils.d.ts +8 -1
- package/dist/languageService/tooltipUtils.js +102 -1
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/languageService/workspaceSymbolProvider.d.ts +17 -0
- package/dist/languageService/workspaceSymbolProvider.js +133 -0
- package/dist/languageService/workspaceSymbolProvider.js.map +1 -0
- package/dist/localization/localize.d.ts +33 -15
- package/dist/localization/localize.js +13 -7
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +14 -7
- package/dist/parser/parser.js +3 -0
- package/dist/parser/parser.js.map +1 -1
- package/dist/pyright.js +26 -4
- package/dist/pyright.js.map +1 -1
- package/dist/tests/chainedSourceFiles.test.js +15 -20
- package/dist/tests/chainedSourceFiles.test.js.map +1 -1
- package/dist/tests/checker.test.js +14 -0
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/completions.test.js +11 -236
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/docStringConversion.test.js +36 -2
- package/dist/tests/docStringConversion.test.js.map +1 -1
- package/dist/tests/documentSymbolCollector.test.js +3 -3
- package/dist/tests/documentSymbolCollector.test.js.map +1 -1
- package/dist/tests/fourslash/completions.override2.fourslash.js +1 -16
- package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/fourslash.d.ts +4 -4
- package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js +1 -1
- package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.d.ts +17 -11
- package/dist/tests/harness/fourslash/testState.js +39 -50
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/importResolver.test.js +81 -1
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/sourceFile.test.js +1 -1
- package/dist/tests/sourceFile.test.js.map +1 -1
- package/dist/tests/testStateUtils.d.ts +2 -2
- package/dist/tests/testStateUtils.js +38 -8
- package/dist/tests/testStateUtils.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +13 -1
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +5 -1
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +9 -1
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +25 -9
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/dist/tests/workspaceEditUtils.test.js +95 -6
- package/dist/tests/workspaceEditUtils.test.js.map +1 -1
- package/package.json +4 -4
- package/dist/languageService/importAdder.d.ts +0 -40
- package/dist/languageService/importAdder.js +0 -388
- package/dist/languageService/importAdder.js.map +0 -1
- package/dist/languageService/indentationUtils.d.ts +0 -16
- package/dist/languageService/indentationUtils.js +0 -727
- package/dist/languageService/indentationUtils.js.map +0 -1
- package/dist/languageService/insertionPointUtils.d.ts +0 -9
- package/dist/languageService/insertionPointUtils.js +0 -132
- package/dist/languageService/insertionPointUtils.js.map +0 -1
- package/dist/languageService/renameModuleProvider.d.ts +0 -65
- package/dist/languageService/renameModuleProvider.js +0 -939
- package/dist/languageService/renameModuleProvider.js.map +0 -1
- package/dist/tests/fourslash/completions.commitChars.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.commitChars.fourslash.js +0 -81
- package/dist/tests/fourslash/completions.commitChars.fourslash.js.map +0 -1
- package/dist/tests/importAdder.test.d.ts +0 -1
- package/dist/tests/importAdder.test.js +0 -1325
- package/dist/tests/importAdder.test.js.map +0 -1
- package/dist/tests/indentationUtils.ptvs.test.d.ts +0 -1
- package/dist/tests/indentationUtils.ptvs.test.js +0 -324
- package/dist/tests/indentationUtils.ptvs.test.js.map +0 -1
- package/dist/tests/indentationUtils.reindent.test.d.ts +0 -1
- package/dist/tests/indentationUtils.reindent.test.js +0 -372
- package/dist/tests/indentationUtils.reindent.test.js.map +0 -1
- package/dist/tests/indentationUtils.test.d.ts +0 -1
- package/dist/tests/indentationUtils.test.js +0 -502
- package/dist/tests/indentationUtils.test.js.map +0 -1
- package/dist/tests/insertionPointUtils.test.d.ts +0 -1
- package/dist/tests/insertionPointUtils.test.js +0 -154
- package/dist/tests/insertionPointUtils.test.js.map +0 -1
- package/dist/tests/moveSymbol.importAdder.test.d.ts +0 -1
- package/dist/tests/moveSymbol.importAdder.test.js +0 -298
- package/dist/tests/moveSymbol.importAdder.test.js.map +0 -1
- package/dist/tests/moveSymbol.insertion.test.d.ts +0 -1
- package/dist/tests/moveSymbol.insertion.test.js +0 -537
- package/dist/tests/moveSymbol.insertion.test.js.map +0 -1
- package/dist/tests/moveSymbol.misc.test.d.ts +0 -1
- package/dist/tests/moveSymbol.misc.test.js +0 -169
- package/dist/tests/moveSymbol.misc.test.js.map +0 -1
- package/dist/tests/moveSymbol.updateReference.test.d.ts +0 -1
- package/dist/tests/moveSymbol.updateReference.test.js +0 -1071
- package/dist/tests/moveSymbol.updateReference.test.js.map +0 -1
- package/dist/tests/renameModule.folder.test.d.ts +0 -1
- package/dist/tests/renameModule.folder.test.js +0 -229
- package/dist/tests/renameModule.folder.test.js.map +0 -1
- package/dist/tests/renameModule.fromImports.test.d.ts +0 -1
- package/dist/tests/renameModule.fromImports.test.js +0 -790
- package/dist/tests/renameModule.fromImports.test.js.map +0 -1
- package/dist/tests/renameModule.imports.test.d.ts +0 -1
- package/dist/tests/renameModule.imports.test.js +0 -380
- package/dist/tests/renameModule.imports.test.js.map +0 -1
- package/dist/tests/renameModule.misc.test.d.ts +0 -1
- package/dist/tests/renameModule.misc.test.js +0 -615
- package/dist/tests/renameModule.misc.test.js.map +0 -1
- package/dist/tests/renameModule.relativePath.test.d.ts +0 -1
- package/dist/tests/renameModule.relativePath.test.js +0 -231
- package/dist/tests/renameModule.relativePath.test.js.map +0 -1
- package/dist/tests/renameModuleTestUtils.d.ts +0 -4
- package/dist/tests/renameModuleTestUtils.js +0 -76
- package/dist/tests/renameModuleTestUtils.js.map +0 -1
@@ -1,372 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
/*
|
3
|
-
* indentationUtils.test.ts
|
4
|
-
* Copyright (c) Microsoft Corporation.
|
5
|
-
* Licensed under the MIT license.
|
6
|
-
*
|
7
|
-
* Unit tests for indentationUtils module.
|
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 textRange_1 = require("../common/textRange");
|
15
|
-
const indentationUtils_1 = require("../languageService/indentationUtils");
|
16
|
-
const testState_1 = require("./harness/fourslash/testState");
|
17
|
-
test('re-indentation simple', () => {
|
18
|
-
const code = `
|
19
|
-
//// [|/*marker*/def foo(): pass|]
|
20
|
-
`;
|
21
|
-
const expected = `def foo(): pass`;
|
22
|
-
testIndentation(code, 0, expected);
|
23
|
-
});
|
24
|
-
test('re-indentation indent first token', () => {
|
25
|
-
const code = `
|
26
|
-
//// [|/*marker*/ def foo(): pass|]
|
27
|
-
`;
|
28
|
-
const expected = ` def foo(): pass`;
|
29
|
-
testIndentation(code, 2, expected);
|
30
|
-
});
|
31
|
-
test('re-indentation explicit multiline expression', () => {
|
32
|
-
const code = `
|
33
|
-
//// [|/*marker*/def foo():
|
34
|
-
//// i = \\
|
35
|
-
//// 1 \\
|
36
|
-
//// + \\
|
37
|
-
//// 2|]
|
38
|
-
`;
|
39
|
-
const expected = ` def foo():
|
40
|
-
i = \\
|
41
|
-
1 \\
|
42
|
-
+ \\
|
43
|
-
2`;
|
44
|
-
testIndentation(code, 2, expected);
|
45
|
-
});
|
46
|
-
test('re-indentation explicit multiline expression with multiple backslash', () => {
|
47
|
-
const code = `
|
48
|
-
//// [|/*marker*/def foo():
|
49
|
-
//// i = \\
|
50
|
-
//// \\
|
51
|
-
//// \\
|
52
|
-
//// 1|]
|
53
|
-
`;
|
54
|
-
const expected = ` def foo():
|
55
|
-
i = \\
|
56
|
-
\\
|
57
|
-
\\
|
58
|
-
1`;
|
59
|
-
testIndentation(code, 2, expected);
|
60
|
-
});
|
61
|
-
test('re-indentation multiline construct', () => {
|
62
|
-
const code = `
|
63
|
-
//// [|/*marker*/def \\
|
64
|
-
//// foo():
|
65
|
-
//// i = 1 + 2|]
|
66
|
-
`;
|
67
|
-
const expected = ` def \\
|
68
|
-
foo():
|
69
|
-
i = 1 + 2`;
|
70
|
-
testIndentation(code, 2, expected);
|
71
|
-
});
|
72
|
-
test('re-indentation implicit multiline expression', () => {
|
73
|
-
const code = `
|
74
|
-
//// [|/*marker*/def foo():
|
75
|
-
//// i = (
|
76
|
-
//// 1
|
77
|
-
//// +
|
78
|
-
//// 2
|
79
|
-
//// )|]
|
80
|
-
`;
|
81
|
-
const expected = ` def foo():
|
82
|
-
i = (
|
83
|
-
1
|
84
|
-
+
|
85
|
-
2
|
86
|
-
)`;
|
87
|
-
testIndentation(code, 2, expected);
|
88
|
-
});
|
89
|
-
test('re-indentation implicit multiline expression with multiple blank lines', () => {
|
90
|
-
const code = `
|
91
|
-
//// [|/*marker*/def foo():
|
92
|
-
//// i = [
|
93
|
-
//// 1,
|
94
|
-
////
|
95
|
-
//// 2
|
96
|
-
//// ]|]
|
97
|
-
`;
|
98
|
-
const expected = ` def foo():
|
99
|
-
i = [
|
100
|
-
1,
|
101
|
-
|
102
|
-
2
|
103
|
-
]`;
|
104
|
-
testIndentation(code, 2, expected);
|
105
|
-
});
|
106
|
-
test('re-indentation single line string', () => {
|
107
|
-
const code = `
|
108
|
-
//// [|/*marker*/def foo():
|
109
|
-
//// str = "string data"|]
|
110
|
-
`;
|
111
|
-
const expected = ` def foo():
|
112
|
-
str = "string data"`;
|
113
|
-
testIndentation(code, 2, expected);
|
114
|
-
});
|
115
|
-
test('re-indentation multiline line string', () => {
|
116
|
-
const code = `
|
117
|
-
//// [|/*marker*/def foo():
|
118
|
-
//// str = """first line
|
119
|
-
//// second line
|
120
|
-
//// last line
|
121
|
-
//// """|]
|
122
|
-
`;
|
123
|
-
const expected = ` def foo():
|
124
|
-
str = """first line
|
125
|
-
second line
|
126
|
-
last line
|
127
|
-
"""`;
|
128
|
-
testIndentation(code, 2, expected);
|
129
|
-
});
|
130
|
-
test('re-indentation with comments', () => {
|
131
|
-
const code = `
|
132
|
-
//// [|/*marker*/def foo(): # comment at the end
|
133
|
-
//// # commend above the line
|
134
|
-
//// a = ( # commend at multiline expression
|
135
|
-
//// 1 + 2 # comment after expression
|
136
|
-
//// )
|
137
|
-
//// # commend before end of file|]
|
138
|
-
`;
|
139
|
-
const expected = ` def foo(): # comment at the end
|
140
|
-
# commend above the line
|
141
|
-
a = ( # commend at multiline expression
|
142
|
-
1 + 2 # comment after expression
|
143
|
-
)
|
144
|
-
# commend before end of file`;
|
145
|
-
testIndentation(code, 2, expected);
|
146
|
-
});
|
147
|
-
test('re-indentation with comments with backslash', () => {
|
148
|
-
const code = `
|
149
|
-
//// [|/*marker*/def foo(): # comment at the end
|
150
|
-
//// # commend above the line
|
151
|
-
//// a = \\
|
152
|
-
//// 1 + 2 # comment after expression
|
153
|
-
////
|
154
|
-
//// # commend before end of file|]
|
155
|
-
`;
|
156
|
-
const expected = ` def foo(): # comment at the end
|
157
|
-
# commend above the line
|
158
|
-
a = \\
|
159
|
-
1 + 2 # comment after expression
|
160
|
-
|
161
|
-
# commend before end of file`;
|
162
|
-
testIndentation(code, 2, expected);
|
163
|
-
});
|
164
|
-
test('re-indentation doc comment', () => {
|
165
|
-
const code = `
|
166
|
-
//// [|/*marker*/def foo():
|
167
|
-
//// """ doc comment """
|
168
|
-
//// a = 1|]
|
169
|
-
`;
|
170
|
-
const expected = ` def foo():
|
171
|
-
""" doc comment """
|
172
|
-
a = 1`;
|
173
|
-
testIndentation(code, 2, expected);
|
174
|
-
});
|
175
|
-
test('re-indentation multiline doc comment', () => {
|
176
|
-
const code = `
|
177
|
-
//// [|/*marker*/def foo():
|
178
|
-
//// """ doc comment
|
179
|
-
//// line 1
|
180
|
-
//// line 2
|
181
|
-
//// """
|
182
|
-
//// a = 1|]
|
183
|
-
`;
|
184
|
-
const expected = ` def foo():
|
185
|
-
""" doc comment
|
186
|
-
line 1
|
187
|
-
line 2
|
188
|
-
"""
|
189
|
-
a = 1`;
|
190
|
-
testIndentation(code, 2, expected);
|
191
|
-
});
|
192
|
-
test('re-indentation top level multiline doc comment', () => {
|
193
|
-
const code = `
|
194
|
-
//// [|/*marker*/ """ doc comment
|
195
|
-
//// line 1
|
196
|
-
//// line 2
|
197
|
-
//// """
|
198
|
-
//// a = 1|]
|
199
|
-
`;
|
200
|
-
const expected = ` """ doc comment
|
201
|
-
line 1
|
202
|
-
line 2
|
203
|
-
"""
|
204
|
-
a = 1`;
|
205
|
-
testIndentation(code, 2, expected);
|
206
|
-
});
|
207
|
-
test('re-indentation invalid code', () => {
|
208
|
-
const code = `
|
209
|
-
//// [|/*marker*/ASDF
|
210
|
-
//// ASDFASDFASD
|
211
|
-
////
|
212
|
-
//// asdf asdf asd fasdf sdf asdf asdf asdf
|
213
|
-
//// 23234235
|
214
|
-
//// $%^#&*()_++
|
215
|
-
//// asdfas asdf|]
|
216
|
-
`;
|
217
|
-
const expected = ` ASDF
|
218
|
-
ASDFASDFASD
|
219
|
-
|
220
|
-
asdf asdf asd fasdf sdf asdf asdf asdf
|
221
|
-
23234235
|
222
|
-
$%^#&*()_++
|
223
|
-
asdfas asdf`;
|
224
|
-
testIndentation(code, 2, expected);
|
225
|
-
});
|
226
|
-
test('re-indentation without first token', () => {
|
227
|
-
const code = `
|
228
|
-
//// """ doc string """
|
229
|
-
//// i = [|/*marker*/(
|
230
|
-
//// 1 + 2
|
231
|
-
//// )|]
|
232
|
-
`;
|
233
|
-
const expected = `(
|
234
|
-
1 + 2
|
235
|
-
)`;
|
236
|
-
testIndentation(code, 0, expected, /*indentFirstToken*/ false);
|
237
|
-
});
|
238
|
-
test('re-indentation single line variable doc string', () => {
|
239
|
-
const code = `
|
240
|
-
//// [|/*marker*/i = 1
|
241
|
-
//// """ doc string """|]
|
242
|
-
`;
|
243
|
-
const expected = ` i = 1
|
244
|
-
""" doc string """`;
|
245
|
-
testIndentation(code, 2, expected);
|
246
|
-
});
|
247
|
-
test('re-indentation multiple line variable doc string', () => {
|
248
|
-
const code = `
|
249
|
-
//// [|/*marker*/i = 1
|
250
|
-
//// """ doc string
|
251
|
-
//// line 1
|
252
|
-
//// """|]
|
253
|
-
`;
|
254
|
-
const expected = ` i = 1
|
255
|
-
""" doc string
|
256
|
-
line 1
|
257
|
-
"""`;
|
258
|
-
testIndentation(code, 2, expected);
|
259
|
-
});
|
260
|
-
test('re-indentation single token', () => {
|
261
|
-
const code = `
|
262
|
-
//// [|/*marker*/a|]
|
263
|
-
`;
|
264
|
-
const expected = ` a`;
|
265
|
-
testIndentation(code, 2, expected);
|
266
|
-
});
|
267
|
-
test('re-indentation between statements', () => {
|
268
|
-
const code = `
|
269
|
-
//// def foo():
|
270
|
-
//// pass
|
271
|
-
//// [|/*marker*/i = 1|]
|
272
|
-
//// """ doc string
|
273
|
-
//// line 1
|
274
|
-
//// """
|
275
|
-
`;
|
276
|
-
const expected = ` i = 1`;
|
277
|
-
testIndentation(code, 2, expected);
|
278
|
-
});
|
279
|
-
test('re-indentation inside of body', () => {
|
280
|
-
const code = `
|
281
|
-
//// def foo():
|
282
|
-
//// [|/*marker*/ """ doc string
|
283
|
-
//// line 1
|
284
|
-
//// """
|
285
|
-
//// i = 10|]
|
286
|
-
`;
|
287
|
-
const expected = ` """ doc string
|
288
|
-
line 1
|
289
|
-
"""
|
290
|
-
i = 10`;
|
291
|
-
testIndentation(code, 2, expected);
|
292
|
-
});
|
293
|
-
test('re-indentation tab', () => {
|
294
|
-
const code = `
|
295
|
-
//// def foo():
|
296
|
-
//// [|/*marker*/\t""" doc string
|
297
|
-
//// \t\tline 1
|
298
|
-
//// \t"""
|
299
|
-
//// \ti = 10|]
|
300
|
-
`;
|
301
|
-
const expected = ` """ doc string
|
302
|
-
\t line 1
|
303
|
-
"""
|
304
|
-
i = 10`;
|
305
|
-
testIndentation(code, 2, expected);
|
306
|
-
});
|
307
|
-
test('re-indentation tab on multiline text', () => {
|
308
|
-
const code = `
|
309
|
-
//// def foo():
|
310
|
-
//// [|/*marker*/\ta = """ line 1
|
311
|
-
//// \t\tline 2
|
312
|
-
//// \t"""
|
313
|
-
//// \ti = 10
|
314
|
-
//// \tif True:
|
315
|
-
//// \t\tpass|]
|
316
|
-
`;
|
317
|
-
const expected = ` a = """ line 1
|
318
|
-
\t\tline 2
|
319
|
-
\t"""
|
320
|
-
i = 10
|
321
|
-
if True:
|
322
|
-
\t pass`;
|
323
|
-
testIndentation(code, 2, expected);
|
324
|
-
});
|
325
|
-
test('dont include token not contained in the span', () => {
|
326
|
-
const code = `
|
327
|
-
//// import random
|
328
|
-
////
|
329
|
-
//// [|/*marker*/answer_word = random.choice(["a","b","c","d"])
|
330
|
-
//// |]guess_word = "c"
|
331
|
-
`;
|
332
|
-
const expected = `answer_word = random.choice(["a","b","c","d"])`;
|
333
|
-
testIndentation(code, 0, expected);
|
334
|
-
});
|
335
|
-
test('handle comment before first token', () => {
|
336
|
-
const code = `
|
337
|
-
//// [|/*marker*/# this function doesn't do much
|
338
|
-
//// def myfunc(a, b):
|
339
|
-
//// return a + b|]
|
340
|
-
`;
|
341
|
-
const expected = `# this function doesn't do much
|
342
|
-
def myfunc(a, b):
|
343
|
-
return a + b`;
|
344
|
-
testIndentation(code, 0, expected);
|
345
|
-
});
|
346
|
-
test('handle comment after last token', () => {
|
347
|
-
const code = `
|
348
|
-
//// [|/*marker*/def test():
|
349
|
-
//// return # comment|]
|
350
|
-
////
|
351
|
-
`;
|
352
|
-
const expected = `def test():
|
353
|
-
return # comment`;
|
354
|
-
testIndentation(code, 0, expected);
|
355
|
-
});
|
356
|
-
test('handle comment after last token at EOF', () => {
|
357
|
-
const code = `
|
358
|
-
//// [|/*marker*/def test():
|
359
|
-
//// return # comment|]
|
360
|
-
`;
|
361
|
-
const expected = `def test():
|
362
|
-
return # comment`;
|
363
|
-
testIndentation(code, 0, expected);
|
364
|
-
});
|
365
|
-
function testIndentation(code, indentation, expected, indentFirstToken = true) {
|
366
|
-
const state = (0, testState_1.parseAndGetTestState)(code).state;
|
367
|
-
const range = state.getRangeByMarkerName('marker');
|
368
|
-
const parseResults = state.program.getBoundSourceFile(range.fileName).getParseResults();
|
369
|
-
const actual = (0, indentationUtils_1.reindentSpan)(parseResults, textRange_1.TextRange.fromBounds(range.pos, range.end), indentation, indentFirstToken).text;
|
370
|
-
assert_1.default.strictEqual(actual, expected);
|
371
|
-
}
|
372
|
-
//# sourceMappingURL=indentationUtils.reindent.test.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"indentationUtils.reindent.test.js","sourceRoot":"","sources":["../../../src/tests/indentationUtils.reindent.test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAEH,oDAA4B;AAE5B,mDAAgD;AAChD,0EAAmE;AACnE,6DAAqE;AAErE,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,IAAI,GAAG;;KAEZ,CAAC;IAEF,MAAM,QAAQ,GAAG,iBAAiB,CAAC;IACnC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,IAAI,GAAG;;KAEZ,CAAC;IAEF,MAAM,QAAQ,GAAG,mBAAmB,CAAC;IACrC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACtD,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;YAIT,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAC9E,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;YAIT,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC5C,MAAM,IAAI,GAAG;;;;KAIZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;gBAEL,CAAC;IAEb,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACtD,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;YAKT,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wEAAwE,EAAE,GAAG,EAAE;IAChF,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;YAKT,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,IAAI,GAAG;;;KAGZ,CAAC;IAEF,MAAM,QAAQ,GAAG;0BACK,CAAC;IAEvB,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAC9C,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;IAIjB,CAAC;IAED,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;mCAKc,CAAC;IAEhC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;mCAKc,CAAC;IAEhC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACpC,MAAM,IAAI,GAAG;;;;KAIZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;YAET,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAC9C,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;YAKT,CAAC;IAET,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;MAIf,CAAC;IAEH,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACrC,MAAM,IAAI,GAAG;;;;;;;;KAQZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;;cAMP,CAAC;IAEX,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC5C,MAAM,IAAI,GAAG;;;;;KAKZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;EAEnB,CAAC;IAEC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,MAAM,IAAI,GAAG;;;KAGZ,CAAC;IAEF,MAAM,QAAQ,GAAG;qBACA,CAAC;IAElB,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC1D,MAAM,IAAI,GAAG;;;;;KAKZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;MAGf,CAAC;IAEH,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACrC,MAAM,IAAI,GAAG;;KAEZ,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,CAAC;IAEvB,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,IAAI,GAAG;;;;;;;KAOZ,CAAC;IAEF,MAAM,QAAQ,GAAG,SAAS,CAAC;IAE3B,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;IACvC,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;SAGZ,CAAC;IAEN,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAC5B,MAAM,IAAI,GAAG;;;;;;KAMZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;SAGZ,CAAC;IAEN,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAC9C,MAAM,IAAI,GAAG;;;;;;;;KAQZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;;;;SAKZ,CAAC;IAEN,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACtD,MAAM,IAAI,GAAG;;;;;KAKZ,CAAC;IAEF,MAAM,QAAQ,GAAG,gDAAgD,CAAC;IAElE,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC3C,MAAM,IAAI,GAAG;;;;KAIZ,CAAC;IAEF,MAAM,QAAQ,GAAG;;iBAEJ,CAAC;IAEd,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,IAAI,GAAG;;;;KAIZ,CAAC;IAEF,MAAM,QAAQ,GAAG;qBACA,CAAC;IAElB,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAChD,MAAM,IAAI,GAAG;;;KAGZ,CAAC;IAEF,MAAM,QAAQ,GAAG;qBACA,CAAC;IAElB,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,IAAY,EAAE,WAAmB,EAAE,QAAgB,EAAE,gBAAgB,GAAG,IAAI;IACjG,MAAM,KAAK,GAAG,IAAA,gCAAoB,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAE,CAAC;IAEpD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAE,CAAC,eAAe,EAAG,CAAC;IAC1F,MAAM,MAAM,GAAG,IAAA,+BAAY,EACvB,YAAY,EACZ,qBAAS,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,EAC1C,WAAW,EACX,gBAAgB,CACnB,CAAC,IAAI,CAAC;IAEP,gBAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|