@schematics/angular 22.0.0-next.6 → 22.0.0-next.8
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/app-shell/index.js +1 -1
- package/app-shell/index.js.map +1 -1
- package/config/index.js +1 -1
- package/migrations/{karma → migrate-karma-to-vitest}/karma-config-analyzer.js +2 -1
- package/migrations/migrate-karma-to-vitest/karma-config-analyzer.js.map +1 -0
- package/migrations/migrate-karma-to-vitest/karma-processor.d.ts +6 -1
- package/migrations/migrate-karma-to-vitest/karma-processor.js +18 -21
- package/migrations/migrate-karma-to-vitest/karma-processor.js.map +1 -1
- package/migrations/migrate-karma-to-vitest/migration.js +99 -27
- package/migrations/migrate-karma-to-vitest/migration.js.map +1 -1
- package/migrations/migration-collection.json +6 -6
- package/migrations/{karma → trust-proxy-headers}/migration.d.ts +1 -1
- package/migrations/trust-proxy-headers/migration.js +80 -0
- package/migrations/trust-proxy-headers/migration.js.map +1 -0
- package/module/index.js +6 -36
- package/module/index.js.map +1 -1
- package/package.json +7 -6
- package/refactor/jasmine-vitest/index.js +1 -0
- package/refactor/jasmine-vitest/index.js.map +1 -1
- package/refactor/jasmine-vitest/schema.d.ts +4 -0
- package/refactor/jasmine-vitest/schema.json +5 -0
- package/refactor/jasmine-vitest/test-file-transformer.d.ts +1 -0
- package/refactor/jasmine-vitest/test-file-transformer.js +42 -14
- package/refactor/jasmine-vitest/test-file-transformer.js.map +1 -1
- package/refactor/jasmine-vitest/transformers/fake-async-flush-microtasks.d.ts +10 -0
- package/refactor/jasmine-vitest/transformers/fake-async-flush-microtasks.js +29 -0
- package/refactor/jasmine-vitest/transformers/fake-async-flush-microtasks.js.map +1 -0
- package/refactor/jasmine-vitest/transformers/fake-async-flush.d.ts +10 -0
- package/refactor/jasmine-vitest/transformers/fake-async-flush.js +45 -0
- package/refactor/jasmine-vitest/transformers/fake-async-flush.js.map +1 -0
- package/refactor/jasmine-vitest/transformers/fake-async-test.d.ts +14 -0
- package/refactor/jasmine-vitest/transformers/fake-async-test.js +145 -0
- package/refactor/jasmine-vitest/transformers/fake-async-test.js.map +1 -0
- package/refactor/jasmine-vitest/transformers/fake-async-tick.d.ts +10 -0
- package/refactor/jasmine-vitest/transformers/fake-async-tick.js +30 -0
- package/refactor/jasmine-vitest/transformers/fake-async-tick.js.map +1 -0
- package/refactor/jasmine-vitest/transformers/jasmine-lifecycle.d.ts +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-lifecycle.js +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-lifecycle.js.map +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-matcher.d.ts +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-matcher.js +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-matcher.js.map +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-misc.d.ts +2 -2
- package/refactor/jasmine-vitest/transformers/jasmine-misc.js +8 -5
- package/refactor/jasmine-vitest/transformers/jasmine-misc.js.map +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-spy.d.ts +3 -3
- package/refactor/jasmine-vitest/transformers/jasmine-spy.js +13 -10
- package/refactor/jasmine-vitest/transformers/jasmine-spy.js.map +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-type.d.ts +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-type.js +1 -1
- package/refactor/jasmine-vitest/transformers/jasmine-type.js.map +1 -1
- package/refactor/jasmine-vitest/utils/ast-helpers.d.ts +13 -2
- package/refactor/jasmine-vitest/utils/ast-helpers.js +68 -9
- package/refactor/jasmine-vitest/utils/ast-helpers.js.map +1 -1
- package/refactor/jasmine-vitest/utils/ast-validation.d.ts +1 -1
- package/refactor/jasmine-vitest/utils/ast-validation.js +1 -1
- package/refactor/jasmine-vitest/utils/ast-validation.js.map +1 -1
- package/refactor/jasmine-vitest/utils/comment-helpers.d.ts +1 -1
- package/refactor/jasmine-vitest/utils/comment-helpers.js +1 -1
- package/refactor/jasmine-vitest/utils/comment-helpers.js.map +1 -1
- package/refactor/jasmine-vitest/utils/constants.d.ts +8 -0
- package/refactor/jasmine-vitest/utils/constants.js +12 -0
- package/refactor/jasmine-vitest/utils/constants.js.map +1 -0
- package/refactor/jasmine-vitest/utils/refactor-context.d.ts +6 -1
- package/refactor/jasmine-vitest/utils/refactor-helpers.d.ts +39 -0
- package/refactor/jasmine-vitest/utils/refactor-helpers.js +58 -0
- package/refactor/jasmine-vitest/utils/refactor-helpers.js.map +1 -0
- package/refactor/jasmine-vitest/utils/refactor-reporter.d.ts +1 -1
- package/refactor/jasmine-vitest/utils/refactor-reporter.js +1 -1
- package/refactor/jasmine-vitest/utils/refactor-reporter.js.map +1 -1
- package/refactor/jasmine-vitest/utils/todo-notes.d.ts +6 -0
- package/refactor/jasmine-vitest/utils/todo-notes.js +6 -0
- package/refactor/jasmine-vitest/utils/todo-notes.js.map +1 -1
- package/service/files/__name@dasherize__.__type@dasherize__.ts.template +3 -3
- package/service/schema.d.ts +4 -0
- package/service/schema.json +5 -0
- package/service-worker/index.js +1 -1
- package/service-worker/index.js.map +1 -1
- package/utility/add-declaration-to-ng-module.js +5 -35
- package/utility/add-declaration-to-ng-module.js.map +1 -1
- package/utility/ast-utils.d.ts +1 -1
- package/utility/ast-utils.js +49 -79
- package/utility/ast-utils.js.map +1 -1
- package/utility/latest-versions/package.json +1 -0
- package/utility/latest-versions.js +3 -3
- package/utility/ng-ast-utils.d.ts +1 -1
- package/utility/ng-ast-utils.js +11 -41
- package/utility/ng-ast-utils.js.map +1 -1
- package/utility/standalone/app_component.js +1 -1
- package/utility/standalone/app_component.js.map +1 -1
- package/utility/standalone/app_config.d.ts +1 -1
- package/utility/standalone/app_config.js +1 -1
- package/utility/standalone/app_config.js.map +1 -1
- package/utility/standalone/code_block.js +1 -1
- package/utility/standalone/code_block.js.map +1 -1
- package/utility/standalone/util.d.ts +1 -1
- package/utility/standalone/util.js +1 -1
- package/utility/standalone/util.js.map +1 -1
- package/migrations/karma/karma-config-analyzer.js.map +0 -1
- package/migrations/karma/migration.js +0 -63
- package/migrations/karma/migration.js.map +0 -1
- package/third_party/typescript/LICENSE +0 -55
- package/third_party/typescript/index.d.ts +0 -11448
- package/third_party/typescript/index.js +0 -201020
- /package/migrations/{karma → migrate-karma-to-vitest}/karma-config-analyzer.d.ts +0 -0
- /package/migrations/{karma → migrate-karma-to-vitest}/karma-config-comparer.d.ts +0 -0
- /package/migrations/{karma → migrate-karma-to-vitest}/karma-config-comparer.js +0 -0
- /package/migrations/{karma → migrate-karma-to-vitest}/karma-config-comparer.js.map +0 -0
package/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@schematics/angular",
|
|
3
|
-
"version": "22.0.0-next.
|
|
3
|
+
"version": "22.0.0-next.8",
|
|
4
4
|
"description": "Schematics specific to Angular",
|
|
5
5
|
"homepage": "https://github.com/angular/angular-cli",
|
|
6
6
|
"keywords": [
|
|
@@ -22,17 +22,18 @@
|
|
|
22
22
|
},
|
|
23
23
|
"schematics": "./collection.json",
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@angular-devkit/core": "22.0.0-next.
|
|
26
|
-
"@angular-devkit/schematics": "22.0.0-next.
|
|
27
|
-
"jsonc-parser": "3.3.1"
|
|
25
|
+
"@angular-devkit/core": "22.0.0-next.8",
|
|
26
|
+
"@angular-devkit/schematics": "22.0.0-next.8",
|
|
27
|
+
"jsonc-parser": "3.3.1",
|
|
28
|
+
"typescript": "6.0.3"
|
|
28
29
|
},
|
|
29
30
|
"repository": {
|
|
30
31
|
"type": "git",
|
|
31
32
|
"url": "git+https://github.com/angular/angular-cli.git"
|
|
32
33
|
},
|
|
33
|
-
"packageManager": "pnpm@10.33.
|
|
34
|
+
"packageManager": "pnpm@10.33.2",
|
|
34
35
|
"engines": {
|
|
35
|
-
"node": "^22.22.0 ||
|
|
36
|
+
"node": "^22.22.0 || ^24.13.1 || >=26.0.0",
|
|
36
37
|
"npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
|
|
37
38
|
"yarn": ">= 1.13.0"
|
|
38
39
|
},
|
|
@@ -94,6 +94,7 @@ function default_1(options) {
|
|
|
94
94
|
const newContent = (0, test_file_transformer_1.transformJasmineToVitest)(file, content, reporter, {
|
|
95
95
|
addImports: !!options.addImports,
|
|
96
96
|
browserMode: !!options.browerMode,
|
|
97
|
+
fakeAsync: !!options.fakeAsync,
|
|
97
98
|
});
|
|
98
99
|
if (content !== newContent) {
|
|
99
100
|
tree.overwrite(file, newContent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAmEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,10 @@ export type Schema = {
|
|
|
15
15
|
* they're migrated to an equivalent assertion.
|
|
16
16
|
*/
|
|
17
17
|
browserMode?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Whether to transform `fakeAsync` tests to Vitest fake timers.
|
|
20
|
+
*/
|
|
21
|
+
fakeAsync?: boolean;
|
|
18
22
|
/**
|
|
19
23
|
* The file suffix to identify test files (e.g., '.spec.ts', '.test.ts').
|
|
20
24
|
*/
|
|
@@ -36,6 +36,11 @@
|
|
|
36
36
|
"description": "Whether the tests are intended to run in browser mode. If true, the `toHaveClass` assertions are left as is because Vitest browser mode has such an assertion. Otherwise they're migrated to an equivalent assertion.",
|
|
37
37
|
"default": false
|
|
38
38
|
},
|
|
39
|
+
"fakeAsync": {
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"description": "Whether to transform `fakeAsync` tests to Vitest fake timers.",
|
|
42
|
+
"default": false
|
|
43
|
+
},
|
|
39
44
|
"report": {
|
|
40
45
|
"type": "boolean",
|
|
41
46
|
"description": "Whether to generate a summary report file (jasmine-vitest-<date>.md) in the project root.",
|
|
@@ -18,4 +18,5 @@ import { RefactorReporter } from './utils/refactor-reporter';
|
|
|
18
18
|
export declare function transformJasmineToVitest(filePath: string, content: string, reporter: RefactorReporter, options: {
|
|
19
19
|
addImports: boolean;
|
|
20
20
|
browserMode: boolean;
|
|
21
|
+
fakeAsync?: boolean;
|
|
21
22
|
}): string;
|
|
@@ -17,7 +17,11 @@ exports.transformJasmineToVitest = transformJasmineToVitest;
|
|
|
17
17
|
* syntax and APIs to their Vitest equivalents. It also handles import management,
|
|
18
18
|
* blank line preservation, and reporting of transformation details.
|
|
19
19
|
*/
|
|
20
|
-
const typescript_1 = __importDefault(require("
|
|
20
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
21
|
+
const fake_async_flush_1 = require("./transformers/fake-async-flush");
|
|
22
|
+
const fake_async_flush_microtasks_1 = require("./transformers/fake-async-flush-microtasks");
|
|
23
|
+
const fake_async_test_1 = require("./transformers/fake-async-test");
|
|
24
|
+
const fake_async_tick_1 = require("./transformers/fake-async-tick");
|
|
21
25
|
const jasmine_lifecycle_1 = require("./transformers/jasmine-lifecycle");
|
|
22
26
|
const jasmine_matcher_1 = require("./transformers/jasmine-matcher");
|
|
23
27
|
const jasmine_misc_1 = require("./transformers/jasmine-misc");
|
|
@@ -30,16 +34,20 @@ const ast_helpers_1 = require("./utils/ast-helpers");
|
|
|
30
34
|
*/
|
|
31
35
|
const BLANK_LINE_PLACEHOLDER = '// __PRESERVE_BLANK_LINE__';
|
|
32
36
|
/**
|
|
33
|
-
* Vitest
|
|
37
|
+
* Jasmine to Vitest imports map that should be employed when the --add-imports option is used.
|
|
34
38
|
*/
|
|
35
|
-
const
|
|
36
|
-
'describe',
|
|
37
|
-
'
|
|
38
|
-
'
|
|
39
|
-
'
|
|
40
|
-
'
|
|
41
|
-
'
|
|
42
|
-
'
|
|
39
|
+
const JASMINE_TO_VITEST_IMPORT = new Map([
|
|
40
|
+
['describe', 'describe'],
|
|
41
|
+
['fdescribe', 'describe'],
|
|
42
|
+
['xdescribe', 'describe'],
|
|
43
|
+
['it', 'it'],
|
|
44
|
+
['fit', 'it'],
|
|
45
|
+
['xit', 'it'],
|
|
46
|
+
['expect', 'expect'],
|
|
47
|
+
['beforeEach', 'beforeEach'],
|
|
48
|
+
['afterEach', 'afterEach'],
|
|
49
|
+
['beforeAll', 'beforeAll'],
|
|
50
|
+
['afterAll', 'afterAll'],
|
|
43
51
|
]);
|
|
44
52
|
/**
|
|
45
53
|
* Replaces blank lines in the content with a placeholder to prevent TypeScript's printer
|
|
@@ -91,6 +99,10 @@ const callExpressionTransformers = [
|
|
|
91
99
|
jasmine_matcher_1.transformToHaveBeenCalledBefore,
|
|
92
100
|
jasmine_matcher_1.transformToHaveClass,
|
|
93
101
|
jasmine_matcher_1.transformToBeNullish,
|
|
102
|
+
fake_async_test_1.transformFakeAsyncTest,
|
|
103
|
+
fake_async_tick_1.transformFakeAsyncTick,
|
|
104
|
+
fake_async_flush_1.transformFakeAsyncFlush,
|
|
105
|
+
fake_async_flush_microtasks_1.transformFakeAsyncFlushMicrotasks,
|
|
94
106
|
// **Stage 3: Global Functions & Cleanup**
|
|
95
107
|
// These handle global Jasmine functions and catch-alls for unsupported APIs.
|
|
96
108
|
jasmine_misc_1.transformTimerMocks,
|
|
@@ -128,10 +140,12 @@ const expressionStatementTransformers = [
|
|
|
128
140
|
* @returns The transformed code.
|
|
129
141
|
*/
|
|
130
142
|
function transformJasmineToVitest(filePath, content, reporter, options) {
|
|
143
|
+
options.fakeAsync ??= false;
|
|
131
144
|
const contentWithPlaceholders = preserveBlankLines(content);
|
|
132
145
|
const sourceFile = typescript_1.default.createSourceFile(filePath, contentWithPlaceholders, typescript_1.default.ScriptTarget.Latest, true, typescript_1.default.ScriptKind.TS);
|
|
133
146
|
const pendingVitestValueImports = new Set();
|
|
134
147
|
const pendingVitestTypeImports = new Set();
|
|
148
|
+
const pendingImportSpecifierRemovals = new Map();
|
|
135
149
|
const transformer = (context) => {
|
|
136
150
|
const refactorCtx = {
|
|
137
151
|
sourceFile,
|
|
@@ -139,6 +153,7 @@ function transformJasmineToVitest(filePath, content, reporter, options) {
|
|
|
139
153
|
tsContext: context,
|
|
140
154
|
pendingVitestValueImports,
|
|
141
155
|
pendingVitestTypeImports,
|
|
156
|
+
pendingImportSpecifierRemovals,
|
|
142
157
|
};
|
|
143
158
|
const visitor = (node) => {
|
|
144
159
|
let transformedNode = node;
|
|
@@ -146,12 +161,20 @@ function transformJasmineToVitest(filePath, content, reporter, options) {
|
|
|
146
161
|
if (typescript_1.default.isCallExpression(transformedNode)) {
|
|
147
162
|
if (options.addImports && typescript_1.default.isIdentifier(transformedNode.expression)) {
|
|
148
163
|
const name = transformedNode.expression.text;
|
|
149
|
-
|
|
150
|
-
|
|
164
|
+
const importSpecifierName = JASMINE_TO_VITEST_IMPORT.get(name);
|
|
165
|
+
if (importSpecifierName) {
|
|
166
|
+
(0, ast_helpers_1.addVitestValueImport)(pendingVitestValueImports, importSpecifierName);
|
|
151
167
|
}
|
|
152
168
|
}
|
|
153
169
|
for (const transformer of callExpressionTransformers) {
|
|
154
|
-
if (!(options.browserMode && transformer === jasmine_matcher_1.transformToHaveClass)
|
|
170
|
+
if (!((options.browserMode && transformer === jasmine_matcher_1.transformToHaveClass) ||
|
|
171
|
+
(options.fakeAsync === false &&
|
|
172
|
+
[
|
|
173
|
+
fake_async_flush_1.transformFakeAsyncFlush,
|
|
174
|
+
fake_async_flush_microtasks_1.transformFakeAsyncFlushMicrotasks,
|
|
175
|
+
fake_async_tick_1.transformFakeAsyncTick,
|
|
176
|
+
fake_async_test_1.transformFakeAsyncTest,
|
|
177
|
+
].includes(transformer)))) {
|
|
155
178
|
transformedNode = transformer(transformedNode, refactorCtx);
|
|
156
179
|
}
|
|
157
180
|
}
|
|
@@ -189,12 +212,17 @@ function transformJasmineToVitest(filePath, content, reporter, options) {
|
|
|
189
212
|
let transformedSourceFile = result.transformed[0];
|
|
190
213
|
const hasPendingValueImports = pendingVitestValueImports.size > 0;
|
|
191
214
|
const hasPendingTypeImports = pendingVitestTypeImports.size > 0;
|
|
215
|
+
const hasPendingImportSpecifierRemovals = pendingImportSpecifierRemovals.size > 0;
|
|
192
216
|
if (transformedSourceFile === sourceFile &&
|
|
193
217
|
!reporter.hasTodos &&
|
|
194
218
|
!hasPendingValueImports &&
|
|
195
|
-
!hasPendingTypeImports
|
|
219
|
+
!hasPendingTypeImports &&
|
|
220
|
+
!hasPendingImportSpecifierRemovals) {
|
|
196
221
|
return content;
|
|
197
222
|
}
|
|
223
|
+
if (hasPendingImportSpecifierRemovals) {
|
|
224
|
+
transformedSourceFile = (0, ast_helpers_1.removeImportSpecifiers)(transformedSourceFile, pendingImportSpecifierRemovals);
|
|
225
|
+
}
|
|
198
226
|
if (hasPendingTypeImports || (options.addImports && hasPendingValueImports)) {
|
|
199
227
|
const vitestImport = (0, ast_helpers_1.getVitestAutoImports)(options.addImports ? pendingVitestValueImports : new Set(), pendingVitestTypeImports);
|
|
200
228
|
if (vitestImport) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-file-transformer.js","sourceRoot":"","sources":["test-file-transformer.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;
|
|
1
|
+
{"version":3,"file":"test-file-transformer.js","sourceRoot":"","sources":["test-file-transformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { RefactorContext } from '../utils/refactor-context';
|
|
10
|
+
export declare function transformFakeAsyncFlushMicrotasks(node: ts.Node, ctx: RefactorContext): ts.Node;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
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
|
+
exports.transformFakeAsyncFlushMicrotasks = transformFakeAsyncFlushMicrotasks;
|
|
14
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
15
|
+
const ast_helpers_1 = require("../utils/ast-helpers");
|
|
16
|
+
const constants_1 = require("../utils/constants");
|
|
17
|
+
const refactor_helpers_1 = require("../utils/refactor-helpers");
|
|
18
|
+
function transformFakeAsyncFlushMicrotasks(node, ctx) {
|
|
19
|
+
if (!(typescript_1.default.isCallExpression(node) &&
|
|
20
|
+
typescript_1.default.isIdentifier(node.expression) &&
|
|
21
|
+
node.expression.text === 'flushMicrotasks' &&
|
|
22
|
+
(0, ast_helpers_1.isNamedImportFrom)(ctx.sourceFile, 'flushMicrotasks', constants_1.ANGULAR_CORE_TESTING))) {
|
|
23
|
+
return node;
|
|
24
|
+
}
|
|
25
|
+
ctx.reporter.reportTransformation(ctx.sourceFile, node, `Transformed \`flushMicrotasks\` to \`await vi.advanceTimersByTimeAsync(0)\`.`);
|
|
26
|
+
(0, refactor_helpers_1.addImportSpecifierRemoval)(ctx, 'flushMicrotasks', constants_1.ANGULAR_CORE_TESTING);
|
|
27
|
+
return typescript_1.default.factory.createAwaitExpression((0, refactor_helpers_1.createViCallExpression)(ctx, 'advanceTimersByTimeAsync', [typescript_1.default.factory.createNumericLiteral(0)]));
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=fake-async-flush-microtasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-async-flush-microtasks.js","sourceRoot":"","sources":["fake-async-flush-microtasks.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAQH,8EAuBC;AA7BD,4DAA4B;AAC5B,sDAAyD;AACzD,kDAA0D;AAE1D,gEAA8F;AAE9F,SAAgB,iCAAiC,CAAC,IAAa,EAAE,GAAoB;IACnF,IACE,CAAC,CACC,oBAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;QACzB,oBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB;QAC1C,IAAA,+BAAiB,EAAC,GAAG,CAAC,UAAU,EAAE,iBAAiB,EAAE,gCAAoB,CAAC,CAC3E,EACD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAC/B,GAAG,CAAC,UAAU,EACd,IAAI,EACJ,8EAA8E,CAC/E,CAAC;IAEF,IAAA,4CAAyB,EAAC,GAAG,EAAE,iBAAiB,EAAE,gCAAoB,CAAC,CAAC;IAExE,OAAO,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CACrC,IAAA,yCAAsB,EAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9F,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { RefactorContext } from '../utils/refactor-context';
|
|
10
|
+
export declare function transformFakeAsyncFlush(node: ts.Node, ctx: RefactorContext): ts.Node;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
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
|
+
exports.transformFakeAsyncFlush = transformFakeAsyncFlush;
|
|
14
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
15
|
+
const ast_helpers_1 = require("../utils/ast-helpers");
|
|
16
|
+
const comment_helpers_1 = require("../utils/comment-helpers");
|
|
17
|
+
const constants_1 = require("../utils/constants");
|
|
18
|
+
const refactor_helpers_1 = require("../utils/refactor-helpers");
|
|
19
|
+
function transformFakeAsyncFlush(node, ctx) {
|
|
20
|
+
if (!(typescript_1.default.isCallExpression(node) &&
|
|
21
|
+
typescript_1.default.isIdentifier(node.expression) &&
|
|
22
|
+
node.expression.text === 'flush' &&
|
|
23
|
+
(0, ast_helpers_1.isNamedImportFrom)(ctx.sourceFile, 'flush', constants_1.ANGULAR_CORE_TESTING))) {
|
|
24
|
+
return node;
|
|
25
|
+
}
|
|
26
|
+
ctx.reporter.reportTransformation(ctx.sourceFile, node, `Transformed \`flush\` to \`await vi.runAllTimersAsync()\`.`);
|
|
27
|
+
(0, refactor_helpers_1.addImportSpecifierRemoval)(ctx, 'flush', constants_1.ANGULAR_CORE_TESTING);
|
|
28
|
+
if (node.arguments.length > 0) {
|
|
29
|
+
ctx.reporter.recordTodo('flush-max-turns', ctx.sourceFile, node);
|
|
30
|
+
(0, comment_helpers_1.addTodoComment)(node, 'flush-max-turns');
|
|
31
|
+
}
|
|
32
|
+
const awaitRunAllTimersAsync = typescript_1.default.factory.createAwaitExpression((0, refactor_helpers_1.createViCallExpression)(ctx, 'runAllTimersAsync'));
|
|
33
|
+
if (typescript_1.default.isExpressionStatement(node.parent)) {
|
|
34
|
+
return awaitRunAllTimersAsync;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
// If `flush` is not used as its own statement, then the return value is probably used.
|
|
38
|
+
// Therefore, we replace it with nullish coalescing that returns 0:
|
|
39
|
+
// > await vi.runAllTimersAsync() ?? 0;
|
|
40
|
+
ctx.reporter.recordTodo('flush-return-value', ctx.sourceFile, node);
|
|
41
|
+
(0, comment_helpers_1.addTodoComment)(node, 'flush-return-value');
|
|
42
|
+
return typescript_1.default.factory.createBinaryExpression(awaitRunAllTimersAsync, typescript_1.default.SyntaxKind.QuestionQuestionToken, typescript_1.default.factory.createNumericLiteral(0));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=fake-async-flush.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-async-flush.js","sourceRoot":"","sources":["fake-async-flush.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AASH,0DA4CC;AAnDD,4DAA4B;AAC5B,sDAAyD;AACzD,8DAA0D;AAC1D,kDAA0D;AAE1D,gEAA8F;AAE9F,SAAgB,uBAAuB,CAAC,IAAa,EAAE,GAAoB;IACzE,IACE,CAAC,CACC,oBAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;QACzB,oBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;QAChC,IAAA,+BAAiB,EAAC,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,gCAAoB,CAAC,CACjE,EACD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAC/B,GAAG,CAAC,UAAU,EACd,IAAI,EACJ,4DAA4D,CAC7D,CAAC;IAEF,IAAA,4CAAyB,EAAC,GAAG,EAAE,OAAO,EAAE,gCAAoB,CAAC,CAAC;IAE9D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjE,IAAA,gCAAc,EAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,sBAAsB,GAAG,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC7D,IAAA,yCAAsB,EAAC,GAAG,EAAE,mBAAmB,CAAC,CACjD,CAAC;IAEF,IAAI,oBAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,OAAO,sBAAsB,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,uFAAuF;QACvF,mEAAmE;QACnE,uCAAuC;QACvC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,oBAAoB,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACpE,IAAA,gCAAc,EAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAE3C,OAAO,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CACtC,sBAAsB,EACtB,oBAAE,CAAC,UAAU,CAAC,qBAAqB,EACnC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CACnC,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { RefactorContext } from '../utils/refactor-context';
|
|
10
|
+
export declare function transformFakeAsyncTest(node: ts.Node, ctx: RefactorContext, currentOutermostDescribeContext?: CurrentOutermostDescribeContext): ts.Node;
|
|
11
|
+
interface CurrentOutermostDescribeContext {
|
|
12
|
+
isUsingFakeAsync: boolean;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
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
|
+
exports.transformFakeAsyncTest = transformFakeAsyncTest;
|
|
14
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
15
|
+
const ast_helpers_1 = require("../utils/ast-helpers");
|
|
16
|
+
const constants_1 = require("../utils/constants");
|
|
17
|
+
const refactor_helpers_1 = require("../utils/refactor-helpers");
|
|
18
|
+
function transformFakeAsyncTest(node, ctx, currentOutermostDescribeContext) {
|
|
19
|
+
// Transform the outermost describe block and skip others.
|
|
20
|
+
if (currentOutermostDescribeContext == null && _is.describe(node)) {
|
|
21
|
+
return _transformDescribeCall(node, ctx);
|
|
22
|
+
}
|
|
23
|
+
// If we encounter a `fakeAsync` call while in a `describe` block, mark it in the context.
|
|
24
|
+
if (typescript_1.default.isCallExpression(node) &&
|
|
25
|
+
typescript_1.default.isIdentifier(node.expression) &&
|
|
26
|
+
node.expression.text === 'fakeAsync' &&
|
|
27
|
+
currentOutermostDescribeContext != null &&
|
|
28
|
+
node.arguments.length >= 1 &&
|
|
29
|
+
_is.arrowOrFunction(node.arguments[0]) &&
|
|
30
|
+
(0, ast_helpers_1.isNamedImportFrom)(ctx.sourceFile, 'fakeAsync', constants_1.ANGULAR_CORE_TESTING)) {
|
|
31
|
+
return _transformFakeAsyncCall(node, ctx, currentOutermostDescribeContext);
|
|
32
|
+
}
|
|
33
|
+
// If we are in a `describe` block, visit the children recursively.
|
|
34
|
+
if (currentOutermostDescribeContext != null) {
|
|
35
|
+
return typescript_1.default.visitEachChild(node, (child) => transformFakeAsyncTest(child, ctx, currentOutermostDescribeContext), ctx.tsContext);
|
|
36
|
+
}
|
|
37
|
+
return node;
|
|
38
|
+
}
|
|
39
|
+
function _transformDescribeCall(node, ctx) {
|
|
40
|
+
const currentOutermostDescribeContext = {
|
|
41
|
+
isUsingFakeAsync: false,
|
|
42
|
+
};
|
|
43
|
+
// Visit children recursively to collect transform `fakeAsync usages
|
|
44
|
+
// within the describe block and detect their presence through `isUsingFakeAsync`.
|
|
45
|
+
node = typescript_1.default.visitEachChild(node, (child) => transformFakeAsyncTest(child, ctx, currentOutermostDescribeContext), ctx.tsContext);
|
|
46
|
+
const { isUsingFakeAsync } = currentOutermostDescribeContext;
|
|
47
|
+
const describeBlock = _findDescribeBlock(node);
|
|
48
|
+
if (!isUsingFakeAsync || describeBlock === undefined) {
|
|
49
|
+
return node;
|
|
50
|
+
}
|
|
51
|
+
(0, refactor_helpers_1.addImportSpecifierRemoval)(ctx, 'fakeAsync', constants_1.ANGULAR_CORE_TESTING);
|
|
52
|
+
return typescript_1.default.factory.updateCallExpression(node, node.expression, node.typeArguments, [
|
|
53
|
+
node.arguments[0],
|
|
54
|
+
typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsGreaterThanToken), typescript_1.default.factory.createBlock([
|
|
55
|
+
..._createFakeTimersHookStatements(ctx),
|
|
56
|
+
...describeBlock.statements,
|
|
57
|
+
])),
|
|
58
|
+
...node.arguments.slice(2),
|
|
59
|
+
]);
|
|
60
|
+
}
|
|
61
|
+
function _transformFakeAsyncCall(node, ctx, currentOutermostDescribeContext) {
|
|
62
|
+
currentOutermostDescribeContext.isUsingFakeAsync = true;
|
|
63
|
+
const fakeAsyncCallback = node.arguments[0];
|
|
64
|
+
if (!_is.arrowOrFunction(fakeAsyncCallback)) {
|
|
65
|
+
return node;
|
|
66
|
+
}
|
|
67
|
+
const callbackBody = typescript_1.default.isBlock(fakeAsyncCallback.body)
|
|
68
|
+
? fakeAsyncCallback.body
|
|
69
|
+
: typescript_1.default.factory.createBlock([typescript_1.default.factory.createExpressionStatement(fakeAsyncCallback.body)]);
|
|
70
|
+
ctx.reporter.reportTransformation(ctx.sourceFile, node, `Transformed \`fakeAsync\` to \`vi.useFakeTimers\`.`);
|
|
71
|
+
let statements = callbackBody.statements;
|
|
72
|
+
// Append `vi.runOnlyPendingTimersAsync()` as the last statement of `beforeEach` to mimic flush behavior.
|
|
73
|
+
if (typescript_1.default.isCallExpression(node.parent) &&
|
|
74
|
+
typescript_1.default.isIdentifier(node.parent.expression) &&
|
|
75
|
+
node.parent.expression.text === 'beforeEach' &&
|
|
76
|
+
!_isFakeAsyncFlushDisabled(node)) {
|
|
77
|
+
statements = typescript_1.default.factory.createNodeArray([
|
|
78
|
+
...statements,
|
|
79
|
+
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createAwaitExpression((0, refactor_helpers_1.createViCallExpression)(ctx, 'runOnlyPendingTimersAsync'))),
|
|
80
|
+
]);
|
|
81
|
+
}
|
|
82
|
+
return typescript_1.default.factory.createArrowFunction([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)], fakeAsyncCallback.typeParameters, fakeAsyncCallback.parameters, undefined, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsGreaterThanToken), typescript_1.default.factory.createBlock(statements));
|
|
83
|
+
}
|
|
84
|
+
function _createFakeTimersHookStatements(ctx) {
|
|
85
|
+
return [
|
|
86
|
+
// > beforeEach(() => {
|
|
87
|
+
// > vi.useFakeTimers({
|
|
88
|
+
// > advanceTimeDelta: 1,
|
|
89
|
+
// > shouldAdvanceTime: true
|
|
90
|
+
// > });
|
|
91
|
+
// > });
|
|
92
|
+
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier('beforeEach'), undefined, [
|
|
93
|
+
typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsGreaterThanToken), typescript_1.default.factory.createBlock([
|
|
94
|
+
typescript_1.default.factory.createExpressionStatement((0, refactor_helpers_1.createViCallExpression)(ctx, 'useFakeTimers', [
|
|
95
|
+
typescript_1.default.factory.createObjectLiteralExpression([
|
|
96
|
+
typescript_1.default.factory.createPropertyAssignment('advanceTimeDelta', typescript_1.default.factory.createNumericLiteral(1)),
|
|
97
|
+
typescript_1.default.factory.createPropertyAssignment('shouldAdvanceTime', typescript_1.default.factory.createTrue()),
|
|
98
|
+
]),
|
|
99
|
+
])),
|
|
100
|
+
], true)),
|
|
101
|
+
])),
|
|
102
|
+
// > afterEach(() => {
|
|
103
|
+
// > vi.useRealTimers();
|
|
104
|
+
// > });
|
|
105
|
+
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier('afterEach'), undefined, [
|
|
106
|
+
typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsGreaterThanToken), typescript_1.default.factory.createBlock([typescript_1.default.factory.createExpressionStatement((0, refactor_helpers_1.createViCallExpression)(ctx, 'useRealTimers'))], true)),
|
|
107
|
+
])),
|
|
108
|
+
];
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Detects if the `flush` option is set to false in the `fakeAsync` call expression.
|
|
112
|
+
* e.g. `fakeAsync(() => { ... }, { flush: false })`
|
|
113
|
+
*/
|
|
114
|
+
function _isFakeAsyncFlushDisabled(fakeAsyncCallExpression) {
|
|
115
|
+
const options = fakeAsyncCallExpression.arguments[1];
|
|
116
|
+
return (options &&
|
|
117
|
+
typescript_1.default.isObjectLiteralExpression(options) &&
|
|
118
|
+
options.properties.some((property) => typescript_1.default.isPropertyAssignment(property) &&
|
|
119
|
+
property.name.getText() === 'flush' &&
|
|
120
|
+
property.initializer.getText() === 'false'));
|
|
121
|
+
}
|
|
122
|
+
function _findDescribeBlock(node) {
|
|
123
|
+
const args = node.arguments;
|
|
124
|
+
const describeCallback = args.length >= 2 ? args[1] : undefined;
|
|
125
|
+
if (describeCallback !== undefined && _is.arrowOrFunction(describeCallback)) {
|
|
126
|
+
return _getFunctionBlock(describeCallback);
|
|
127
|
+
}
|
|
128
|
+
return undefined;
|
|
129
|
+
}
|
|
130
|
+
function _getFunctionBlock(node) {
|
|
131
|
+
return typescript_1.default.isBlock(node.body)
|
|
132
|
+
? node.body
|
|
133
|
+
: typescript_1.default.factory.createBlock([typescript_1.default.factory.createExpressionStatement(node.body)]);
|
|
134
|
+
}
|
|
135
|
+
const _is = {
|
|
136
|
+
arrowOrFunction: (node) => typescript_1.default.isArrowFunction(node) || typescript_1.default.isFunctionExpression(node),
|
|
137
|
+
describe: (node) => typescript_1.default.isCallExpression(node) &&
|
|
138
|
+
// describe
|
|
139
|
+
((typescript_1.default.isIdentifier(node.expression) && node.expression.text === 'describe') ||
|
|
140
|
+
// describe.only or describe.skip
|
|
141
|
+
(typescript_1.default.isPropertyAccessExpression(node.expression) &&
|
|
142
|
+
typescript_1.default.isIdentifier(node.expression.expression) &&
|
|
143
|
+
node.expression.expression.text === 'describe')),
|
|
144
|
+
};
|
|
145
|
+
//# sourceMappingURL=fake-async-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-async-test.js","sourceRoot":"","sources":["fake-async-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import ts from 'typescript';
|
|
9
|
+
import { RefactorContext } from '../utils/refactor-context';
|
|
10
|
+
export declare function transformFakeAsyncTick(node: ts.Node, ctx: RefactorContext): ts.Node;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
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
|
+
exports.transformFakeAsyncTick = transformFakeAsyncTick;
|
|
14
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
15
|
+
const ast_helpers_1 = require("../utils/ast-helpers");
|
|
16
|
+
const constants_1 = require("../utils/constants");
|
|
17
|
+
const refactor_helpers_1 = require("../utils/refactor-helpers");
|
|
18
|
+
function transformFakeAsyncTick(node, ctx) {
|
|
19
|
+
if (!(typescript_1.default.isCallExpression(node) &&
|
|
20
|
+
typescript_1.default.isIdentifier(node.expression) &&
|
|
21
|
+
node.expression.text === 'tick' &&
|
|
22
|
+
(0, ast_helpers_1.isNamedImportFrom)(ctx.sourceFile, 'tick', constants_1.ANGULAR_CORE_TESTING))) {
|
|
23
|
+
return node;
|
|
24
|
+
}
|
|
25
|
+
ctx.reporter.reportTransformation(ctx.sourceFile, node, `Transformed \`tick\` to \`await vi.advanceTimersByTimeAsync()\`.`);
|
|
26
|
+
(0, refactor_helpers_1.addImportSpecifierRemoval)(ctx, 'tick', constants_1.ANGULAR_CORE_TESTING);
|
|
27
|
+
const durationNumericLiteral = node.arguments.length > 0 ? node.arguments[0] : typescript_1.default.factory.createNumericLiteral(0);
|
|
28
|
+
return typescript_1.default.factory.createAwaitExpression((0, refactor_helpers_1.createViCallExpression)(ctx, 'advanceTimersByTimeAsync', [durationNumericLiteral]));
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=fake-async-tick.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-async-tick.js","sourceRoot":"","sources":["fake-async-tick.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAQH,wDA0BC;AAhCD,4DAA4B;AAC5B,sDAAyD;AACzD,kDAA0D;AAE1D,gEAA8F;AAE9F,SAAgB,sBAAsB,CAAC,IAAa,EAAE,GAAoB;IACxE,IACE,CAAC,CACC,oBAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;QACzB,oBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM;QAC/B,IAAA,+BAAiB,EAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,gCAAoB,CAAC,CAChE,EACD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAC/B,GAAG,CAAC,UAAU,EACd,IAAI,EACJ,kEAAkE,CACnE,CAAC;IAEF,IAAA,4CAAyB,EAAC,GAAG,EAAE,MAAM,EAAE,gCAAoB,CAAC,CAAC;IAE7D,MAAM,sBAAsB,GAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAErF,OAAO,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CACrC,IAAA,yCAAsB,EAAC,GAAG,EAAE,0BAA0B,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* focused/skipped tests (fdescribe, fit, xdescribe, xit), pending tests, and asynchronous
|
|
12
12
|
* operations that use the `done` callback.
|
|
13
13
|
*/
|
|
14
|
-
import ts from '
|
|
14
|
+
import ts from 'typescript';
|
|
15
15
|
import { RefactorContext } from '../utils/refactor-context';
|
|
16
16
|
export declare function transformFocusedAndSkippedTests(node: ts.Node, { sourceFile, reporter }: RefactorContext): ts.Node;
|
|
17
17
|
export declare function transformPending(node: ts.Node, { sourceFile, reporter, tsContext }: RefactorContext): ts.Node;
|
|
@@ -19,7 +19,7 @@ exports.transformDoneCallback = transformDoneCallback;
|
|
|
19
19
|
* focused/skipped tests (fdescribe, fit, xdescribe, xit), pending tests, and asynchronous
|
|
20
20
|
* operations that use the `done` callback.
|
|
21
21
|
*/
|
|
22
|
-
const typescript_1 = __importDefault(require("
|
|
22
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
23
23
|
const ast_helpers_1 = require("../utils/ast-helpers");
|
|
24
24
|
const comment_helpers_1 = require("../utils/comment-helpers");
|
|
25
25
|
const FOCUSED_SKIPPED_RENAMES = new Map([
|