@analogjs/vitest-angular 3.0.0-alpha.8 → 3.0.0-alpha.9
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/_virtual/_rolldown/runtime.js +7 -0
- package/package.json +5 -8
- package/setup-snapshots.js +71 -95
- package/setup-snapshots.js.map +1 -0
- package/setup-testbed.js +23 -29
- package/setup-testbed.js.map +1 -0
- package/setup-zone.js +90 -103
- package/setup-zone.js.map +1 -0
- package/src/index.js +3 -4
- package/src/lib/builders/build/devkit.js +22 -17
- package/src/lib/builders/build/devkit.js.map +1 -0
- package/src/lib/builders/build/plugins/angular-memory-plugin.js +51 -77
- package/src/lib/builders/build/plugins/angular-memory-plugin.js.map +1 -0
- package/src/lib/builders/build/plugins/downlevel-plugin.js +23 -22
- package/src/lib/builders/build/plugins/downlevel-plugin.js.map +1 -0
- package/src/lib/builders/build/schema.js +53 -0
- package/src/lib/builders/build/schema.js.map +1 -0
- package/src/lib/builders/build/vitest.impl.js +153 -190
- package/src/lib/builders/build/vitest.impl.js.map +1 -0
- package/src/lib/builders/test/schema.js +51 -0
- package/src/lib/builders/test/schema.js.map +1 -0
- package/src/lib/builders/test/vitest.impl.js +48 -58
- package/src/lib/builders/test/vitest.impl.js.map +1 -0
- package/src/lib/tools/package.json +2 -4
- package/src/lib/tools/src/index.js +3 -6
- package/src/lib/tools/src/schematics/setup/index.js +46 -71
- package/src/lib/tools/src/schematics/setup/index.js.map +1 -1
- package/src/lib/tools/src/schematics/utils/angular.js +16 -22
- package/src/lib/tools/src/schematics/utils/angular.js.map +1 -1
- package/src/lib/tools/src/schematics/utils/dependencies.js +34 -44
- package/src/lib/tools/src/schematics/utils/dependencies.js.map +1 -1
- package/src/lib/tools/src/schematics/utils/index.js +4 -8
- package/src/lib/tools/src/schematics/utils/versions.d.ts +1 -1
- package/src/lib/tools/src/schematics/utils/versions.js +17 -12
- package/src/lib/tools/src/schematics/utils/versions.js.map +1 -1
- package/src/lib/tools/src/schematics/utils/workspace.js +14 -17
- package/src/lib/tools/src/schematics/utils/workspace.js.map +1 -1
- package/src/lib/tools/src/test-global-setup.d.ts +1 -0
- package/README.md +0 -297
- package/src/lib/builders/build/schema.json +0 -47
- package/src/lib/builders/build/utils.js +0 -1
- package/src/lib/builders/test/schema.json +0 -47
- package/src/lib/tools/src/index.js.map +0 -1
- package/src/lib/tools/src/schematics/utils/index.js.map +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, { get: (a, b) => (typeof require !== "undefined" ? require : a)[b] }) : x)(function(x) {
|
|
3
|
+
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
4
|
+
throw Error("Calling `require` for \"" + x + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
|
|
5
|
+
});
|
|
6
|
+
//#endregion
|
|
7
|
+
export { __require };
|
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@analogjs/vitest-angular",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.9",
|
|
4
4
|
"description": "Vitest Builder for Angular",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "Brandon Roberts <robertsbt@gmail.com>",
|
|
7
7
|
"exports": {
|
|
8
8
|
".": "./src/index.js",
|
|
9
|
-
"./package.json": "./package.json",
|
|
10
9
|
"./setup-zone": "./setup-zone.js",
|
|
11
10
|
"./setup-snapshots": "./setup-snapshots.js",
|
|
12
|
-
"./setup-testbed": "./setup-testbed.js"
|
|
11
|
+
"./setup-testbed": "./setup-testbed.js",
|
|
12
|
+
"./package.json": "./package.json"
|
|
13
13
|
},
|
|
14
14
|
"keywords": [
|
|
15
15
|
"angular",
|
|
@@ -64,8 +64,5 @@
|
|
|
64
64
|
"publishConfig": {
|
|
65
65
|
"access": "public",
|
|
66
66
|
"provenance": true
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
"module": "./src/index.js",
|
|
70
|
-
"main": "./src/index.js"
|
|
71
|
-
}
|
|
67
|
+
}
|
|
68
|
+
}
|
package/setup-snapshots.js
CHANGED
|
@@ -1,104 +1,80 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
//#region packages/vitest-angular/setup-snapshots.ts
|
|
2
|
+
var env = globalThis;
|
|
3
3
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
test: test,
|
|
22
|
-
};
|
|
4
|
+
* Allows Vitest to handle Angular test fixtures
|
|
5
|
+
*
|
|
6
|
+
* Vitest Snapshot guide ==> https://vitest.dev/guide/snapshot.html
|
|
7
|
+
*
|
|
8
|
+
* @returns customSnapshotSerializer for Angular Fixture Component
|
|
9
|
+
*/
|
|
10
|
+
var customSnapshotSerializer = () => {
|
|
11
|
+
function serialize(val, config, indentation, depth, refs, printer) {
|
|
12
|
+
return `${printer(fixtureVitestSerializer(val), config, indentation, depth, refs)}`;
|
|
13
|
+
}
|
|
14
|
+
function test(val) {
|
|
15
|
+
return val && isAngularFixture(val);
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
serialize,
|
|
19
|
+
test
|
|
20
|
+
};
|
|
23
21
|
};
|
|
24
22
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
* Check if is an Angular fixture
|
|
24
|
+
*
|
|
25
|
+
* @param val Angular fixture
|
|
26
|
+
* @returns boolean who check if is an angular fixture
|
|
27
|
+
*/
|
|
30
28
|
function isAngularFixture(val) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
'location',
|
|
63
|
-
'_rootLView',
|
|
64
|
-
'_tNode',
|
|
65
|
-
'previousInputValues',
|
|
66
|
-
'instance',
|
|
67
|
-
'changeDetectorRef',
|
|
68
|
-
'hostView',
|
|
69
|
-
'componentType',
|
|
70
|
-
];
|
|
71
|
-
return (JSON.stringify(Object.keys(val)) === JSON.stringify(fixtureKeys) ||
|
|
72
|
-
JSON.stringify(Object.keys(val)) === JSON.stringify(fixtureComponentRefKeys));
|
|
29
|
+
if (typeof val !== "object") return false;
|
|
30
|
+
if (val["componentRef"] || val["componentInstance"]) return true;
|
|
31
|
+
if (val["componentType"]) return true;
|
|
32
|
+
return JSON.stringify(Object.keys(val)) === JSON.stringify([
|
|
33
|
+
"componentRef",
|
|
34
|
+
"ngZone",
|
|
35
|
+
"effectRunner",
|
|
36
|
+
"_autoDetect",
|
|
37
|
+
"_isStable",
|
|
38
|
+
"_isDestroyed",
|
|
39
|
+
"_resolve",
|
|
40
|
+
"_promise",
|
|
41
|
+
"_onUnstableSubscription",
|
|
42
|
+
"_onStableSubscription",
|
|
43
|
+
"_onMicrotaskEmptySubscription",
|
|
44
|
+
"_onErrorSubscription",
|
|
45
|
+
"changeDetectorRef",
|
|
46
|
+
"elementRef",
|
|
47
|
+
"debugElement",
|
|
48
|
+
"componentInstance",
|
|
49
|
+
"nativeElement"
|
|
50
|
+
]) || JSON.stringify(Object.keys(val)) === JSON.stringify([
|
|
51
|
+
"location",
|
|
52
|
+
"_rootLView",
|
|
53
|
+
"_tNode",
|
|
54
|
+
"previousInputValues",
|
|
55
|
+
"instance",
|
|
56
|
+
"changeDetectorRef",
|
|
57
|
+
"hostView",
|
|
58
|
+
"componentType"
|
|
59
|
+
]);
|
|
73
60
|
}
|
|
74
61
|
/**
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
62
|
+
* Serialize Angular fixture for Vitest
|
|
63
|
+
*
|
|
64
|
+
* @param fixture Angular Fixture Component
|
|
65
|
+
* @returns HTML Child Node
|
|
66
|
+
*/
|
|
80
67
|
function fixtureVitestSerializer(fixture) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (componentType && componentType.propDecorators) {
|
|
88
|
-
inputsData = Object.entries(componentType.propDecorators)
|
|
89
|
-
.map(([key, value]) => `${key}="${value}"`)
|
|
90
|
-
.join('');
|
|
91
|
-
}
|
|
92
|
-
// * Get DOM Elements
|
|
93
|
-
const divElement = fixture && fixture.nativeElement
|
|
94
|
-
? fixture.nativeElement
|
|
95
|
-
: fixture.location.nativeElement;
|
|
96
|
-
// * Convert string data to HTML data
|
|
97
|
-
const doc = new DOMParser().parseFromString(`<${selector} ${inputsData}>${divElement.innerHTML}</${selector}>`, 'text/html');
|
|
98
|
-
return doc.body.childNodes[0];
|
|
68
|
+
const componentType = fixture && fixture.componentType ? fixture.componentType : fixture.componentRef.componentType;
|
|
69
|
+
let inputsData = "";
|
|
70
|
+
const selector = Reflect.getOwnPropertyDescriptor(componentType, "__annotations__")?.value[0].selector;
|
|
71
|
+
if (componentType && componentType.propDecorators) inputsData = Object.entries(componentType.propDecorators).map(([key, value]) => `${key}="${value}"`).join("");
|
|
72
|
+
const divElement = fixture && fixture.nativeElement ? fixture.nativeElement : fixture.location.nativeElement;
|
|
73
|
+
return new DOMParser().parseFromString(`<${selector} ${inputsData}>${divElement.innerHTML}</${selector}>`, "text/html").body.childNodes[0];
|
|
99
74
|
}
|
|
100
|
-
[
|
|
101
|
-
|
|
102
|
-
return originalvitestFn.addSnapshotSerializer(customSnapshotSerializer());
|
|
75
|
+
["expect"].forEach((methodName) => {
|
|
76
|
+
return env[methodName].addSnapshotSerializer(customSnapshotSerializer());
|
|
103
77
|
});
|
|
104
|
-
//#
|
|
78
|
+
//#endregion
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=setup-snapshots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-snapshots.js","names":[],"sources":["../../../packages/vitest-angular/setup-snapshots.ts"],"sourcesContent":["const env = globalThis as any;\n\n/**\n * Allows Vitest to handle Angular test fixtures\n *\n * Vitest Snapshot guide ==> https://vitest.dev/guide/snapshot.html\n *\n * @returns customSnapshotSerializer for Angular Fixture Component\n */\nconst customSnapshotSerializer = (): {\n serialize: (...args: any[]) => string;\n test: (val: any) => boolean;\n} => {\n function serialize(\n val: any,\n config: any,\n indentation: any,\n depth: any,\n refs: any,\n printer: any,\n ): string {\n // `printer` is a function that serializes a value using existing plugins.\n return `${printer(\n fixtureVitestSerializer(val),\n config,\n indentation,\n depth,\n refs,\n )}`;\n }\n function test(val: any): boolean {\n // * If it's a ComponentFixture we apply the transformation rules\n return val && isAngularFixture(val);\n }\n return {\n serialize: serialize,\n test: test,\n };\n};\n\n/**\n * Check if is an Angular fixture\n *\n * @param val Angular fixture\n * @returns boolean who check if is an angular fixture\n */\nfunction isAngularFixture(val: any): boolean {\n if (typeof val !== 'object') {\n return false;\n }\n\n if (val['componentRef'] || val['componentInstance']) {\n return true;\n }\n\n if (val['componentType']) {\n return true;\n }\n\n // * Angular fixture keys in Fixture component Object\n const fixtureKeys = [\n 'componentRef',\n 'ngZone',\n 'effectRunner',\n '_autoDetect',\n '_isStable',\n '_isDestroyed',\n '_resolve',\n '_promise',\n '_onUnstableSubscription',\n '_onStableSubscription',\n '_onMicrotaskEmptySubscription',\n '_onErrorSubscription',\n 'changeDetectorRef',\n 'elementRef',\n 'debugElement',\n 'componentInstance',\n 'nativeElement',\n ];\n\n // * Angular fixture keys in Fixture componentRef Object\n const fixtureComponentRefKeys = [\n 'location',\n '_rootLView',\n '_tNode',\n 'previousInputValues',\n 'instance',\n 'changeDetectorRef',\n 'hostView',\n 'componentType',\n ];\n\n return (\n JSON.stringify(Object.keys(val)) === JSON.stringify(fixtureKeys) ||\n JSON.stringify(Object.keys(val)) === JSON.stringify(fixtureComponentRefKeys)\n );\n}\n\n/**\n * Serialize Angular fixture for Vitest\n *\n * @param fixture Angular Fixture Component\n * @returns HTML Child Node\n */\nfunction fixtureVitestSerializer(fixture: any): ChildNode {\n // * Get Component meta data\n const componentType = (\n fixture && fixture.componentType\n ? fixture.componentType\n : fixture.componentRef.componentType\n ) as any;\n\n let inputsData = '';\n\n const selector = Reflect.getOwnPropertyDescriptor(\n componentType,\n '__annotations__',\n )?.value[0].selector;\n\n if (componentType && componentType.propDecorators) {\n inputsData = Object.entries(componentType.propDecorators)\n .map(([key, value]) => `${key}=\"${value}\"`)\n .join('');\n }\n\n // * Get DOM Elements\n const divElement =\n fixture && fixture.nativeElement\n ? fixture.nativeElement\n : fixture.location.nativeElement;\n\n // * Convert string data to HTML data\n const doc = new DOMParser().parseFromString(\n `<${selector} ${inputsData}>${divElement.innerHTML}</${selector}>`,\n 'text/html',\n );\n\n return doc.body.childNodes[0];\n}\n\n['expect'].forEach((methodName) => {\n const originalvitestFn = env[methodName];\n return originalvitestFn.addSnapshotSerializer(customSnapshotSerializer());\n});\n"],"mappings":";AAAA,IAAM,MAAM;;;;;;;;AASZ,IAAM,iCAGD;CACH,SAAS,UACP,KACA,QACA,aACA,OACA,MACA,SACQ;AAER,SAAO,GAAG,QACR,wBAAwB,IAAI,EAC5B,QACA,aACA,OACA,KACD;;CAEH,SAAS,KAAK,KAAmB;AAE/B,SAAO,OAAO,iBAAiB,IAAI;;AAErC,QAAO;EACM;EACL;EACP;;;;;;;;AASH,SAAS,iBAAiB,KAAmB;AAC3C,KAAI,OAAO,QAAQ,SACjB,QAAO;AAGT,KAAI,IAAI,mBAAmB,IAAI,qBAC7B,QAAO;AAGT,KAAI,IAAI,iBACN,QAAO;AAoCT,QACE,KAAK,UAAU,OAAO,KAAK,IAAI,CAAC,KAAK,KAAK,UAjCxB;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAeiE,IAChE,KAAK,UAAU,OAAO,KAAK,IAAI,CAAC,KAAK,KAAK,UAbZ;EAC9B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAI6E;;;;;;;;AAUhF,SAAS,wBAAwB,SAAyB;CAExD,MAAM,gBACJ,WAAW,QAAQ,gBACf,QAAQ,gBACR,QAAQ,aAAa;CAG3B,IAAI,aAAa;CAEjB,MAAM,WAAW,QAAQ,yBACvB,eACA,kBACD,EAAE,MAAM,GAAG;AAEZ,KAAI,iBAAiB,cAAc,eACjC,cAAa,OAAO,QAAQ,cAAc,eAAe,CACtD,KAAK,CAAC,KAAK,WAAW,GAAG,IAAI,IAAI,MAAM,GAAG,CAC1C,KAAK,GAAG;CAIb,MAAM,aACJ,WAAW,QAAQ,gBACf,QAAQ,gBACR,QAAQ,SAAS;AAQvB,QALY,IAAI,WAAW,CAAC,gBAC1B,IAAI,SAAS,GAAG,WAAW,GAAG,WAAW,UAAU,IAAI,SAAS,IAChE,YACD,CAEU,KAAK,WAAW;;AAG7B,CAAC,SAAS,CAAC,SAAS,eAAe;AAEjC,QADyB,IAAI,YACL,sBAAsB,0BAA0B,CAAC;EACzE"}
|
package/setup-testbed.js
CHANGED
|
@@ -1,30 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
})
|
|
21
|
-
], TestModule);
|
|
22
|
-
getTestBed().initTestEnvironment([BrowserTestingModule, TestModule], platformBrowserTesting(), {
|
|
23
|
-
teardown: {
|
|
24
|
-
...{ destroyAfterEach: !browserMode },
|
|
25
|
-
...teardown,
|
|
26
|
-
},
|
|
27
|
-
});
|
|
28
|
-
}
|
|
1
|
+
import { NgModule, provideZonelessChangeDetection } from "@angular/core";
|
|
2
|
+
import { getTestBed, ɵgetCleanupHook } from "@angular/core/testing";
|
|
3
|
+
import { BrowserTestingModule, platformBrowserTesting } from "@angular/platform-browser/testing";
|
|
4
|
+
import { afterEach, beforeEach } from "vitest";
|
|
5
|
+
import _decorate from "@oxc-project/runtime/helpers/decorate";
|
|
6
|
+
//#region packages/vitest-angular/setup-testbed.ts
|
|
7
|
+
var ANGULAR_TESTBED_SETUP = Symbol.for("testbed-setup");
|
|
8
|
+
function setupTestBed({ zoneless = true, providers = [], browserMode = false, teardown } = {}) {
|
|
9
|
+
beforeEach(ɵgetCleanupHook(false));
|
|
10
|
+
afterEach(ɵgetCleanupHook(true));
|
|
11
|
+
if (!globalThis[ANGULAR_TESTBED_SETUP]) {
|
|
12
|
+
globalThis[ANGULAR_TESTBED_SETUP] = true;
|
|
13
|
+
let TestModule = class TestModule {};
|
|
14
|
+
TestModule = _decorate([NgModule({ providers: [...zoneless ? [provideZonelessChangeDetection()] : [], ...providers] })], TestModule);
|
|
15
|
+
getTestBed().initTestEnvironment([BrowserTestingModule, TestModule], platformBrowserTesting(), { teardown: {
|
|
16
|
+
destroyAfterEach: !browserMode,
|
|
17
|
+
...teardown
|
|
18
|
+
} });
|
|
19
|
+
}
|
|
29
20
|
}
|
|
30
|
-
//#
|
|
21
|
+
//#endregion
|
|
22
|
+
export { setupTestBed };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=setup-testbed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-testbed.js","names":[],"sources":["../../../packages/vitest-angular/setup-testbed.ts"],"sourcesContent":["import {\n EnvironmentProviders,\n NgModule,\n Provider,\n provideZonelessChangeDetection,\n} from '@angular/core';\nimport {\n ɵgetCleanupHook as getCleanupHook,\n getTestBed,\n} from '@angular/core/testing';\nimport {\n BrowserTestingModule,\n platformBrowserTesting,\n} from '@angular/platform-browser/testing';\nimport { afterEach, beforeEach } from 'vitest';\n\nconst ANGULAR_TESTBED_SETUP = Symbol.for('testbed-setup');\n\ntype TestBedSetupOptions = {\n zoneless?: boolean;\n providers?: (Provider | EnvironmentProviders)[];\n /**\n * @deprecated Use `teardown.destroyAfterEach` instead.\n * @sunset 3.0.0\n */\n browserMode?: boolean;\n teardown?: {\n destroyAfterEach: boolean;\n };\n};\n\nexport function setupTestBed({\n zoneless = true,\n providers = [],\n browserMode = false,\n teardown,\n}: TestBedSetupOptions = {}): void {\n beforeEach(getCleanupHook(false));\n afterEach(getCleanupHook(true));\n\n if (!(globalThis as any)[ANGULAR_TESTBED_SETUP]) {\n (globalThis as any)[ANGULAR_TESTBED_SETUP] = true;\n\n @NgModule({\n providers: [\n ...(zoneless ? [provideZonelessChangeDetection()] : []),\n ...providers,\n ],\n })\n class TestModule {}\n\n getTestBed().initTestEnvironment(\n [BrowserTestingModule, TestModule],\n platformBrowserTesting(),\n {\n teardown: {\n ...{ destroyAfterEach: !browserMode },\n ...teardown,\n },\n },\n );\n }\n}\n"],"mappings":";;;;;;AAgBA,IAAM,wBAAwB,OAAO,IAAI,gBAAgB;AAezD,SAAgB,aAAa,EAC3B,WAAW,MACX,YAAY,EAAE,EACd,cAAc,OACd,aACuB,EAAE,EAAQ;AACjC,YAAW,gBAAe,MAAM,CAAC;AACjC,WAAU,gBAAe,KAAK,CAAC;AAE/B,KAAI,CAAE,WAAmB,wBAAwB;AAC9C,aAAmB,yBAAyB;EAE7C,IAAA,aAAA,MAMM,WAAW;0BANhB,SAAS,EACR,WAAW,CACT,GAAI,WAAW,CAAC,gCAAgC,CAAC,GAAG,EAAE,EACtD,GAAG,UACJ,EACF,CAAC,CAAA,EAAA,WAAA;AAGF,cAAY,CAAC,oBACX,CAAC,sBAAsB,WAAW,EAClC,wBAAwB,EACxB,EACE,UAAU;GACH,kBAAkB,CAAC;GACxB,GAAG;GACJ,EACF,CACF"}
|
package/setup-zone.js
CHANGED
|
@@ -1,115 +1,102 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
1
|
+
import "./setup-snapshots.js";
|
|
2
|
+
import "zone.js";
|
|
3
|
+
import "zone.js/plugins/sync-test";
|
|
4
|
+
import "zone.js/plugins/proxy";
|
|
5
|
+
import "zone.js/testing";
|
|
6
|
+
//#region packages/vitest-angular/setup-zone.ts
|
|
6
7
|
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
if (
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
if (SyncTestZoneSpec === undefined) {
|
|
22
|
-
throw new Error('Missing: SyncTestZoneSpec (zone.js/plugins/sync-test)');
|
|
23
|
-
}
|
|
24
|
-
if (ProxyZoneSpec === undefined) {
|
|
25
|
-
throw new Error('Missing: ProxyZoneSpec (zone.js/plugins/proxy.js)');
|
|
26
|
-
}
|
|
27
|
-
const env = globalThis;
|
|
28
|
-
const ambientZone = Zone.current;
|
|
29
|
-
// Create a synchronous-only zone in which to run `describe` blocks in order to
|
|
30
|
-
// raise an error if any asynchronous operations are attempted
|
|
31
|
-
// inside of a `describe` but outside of a `beforeEach` or `it`.
|
|
32
|
-
const syncZone = ambientZone.fork(new SyncTestZoneSpec('vitest.describe'));
|
|
8
|
+
* Patch Vitest's describe/test/beforeEach/afterEach functions so test code
|
|
9
|
+
* always runs in a testZone (ProxyZone).
|
|
10
|
+
*/
|
|
11
|
+
var Zone = globalThis["Zone"];
|
|
12
|
+
if (Zone === void 0) throw new Error("Missing: Zone (zone.js)");
|
|
13
|
+
if (globalThis["__vitest_zone_patch__"] === true) throw new Error("'vitest' has already been patched with 'Zone'.");
|
|
14
|
+
globalThis["__vitest_zone_patch__"] = true;
|
|
15
|
+
var SyncTestZoneSpec = Zone["SyncTestZoneSpec"];
|
|
16
|
+
var ProxyZoneSpec = Zone["ProxyZoneSpec"];
|
|
17
|
+
if (SyncTestZoneSpec === void 0) throw new Error("Missing: SyncTestZoneSpec (zone.js/plugins/sync-test)");
|
|
18
|
+
if (ProxyZoneSpec === void 0) throw new Error("Missing: ProxyZoneSpec (zone.js/plugins/proxy.js)");
|
|
19
|
+
var env = globalThis;
|
|
20
|
+
var ambientZone = Zone.current;
|
|
21
|
+
var syncZone = ambientZone.fork(new SyncTestZoneSpec("vitest.describe"));
|
|
33
22
|
function wrapDescribeInZone(describeBody) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
23
|
+
return function(...args) {
|
|
24
|
+
return syncZone.run(describeBody, null, args);
|
|
25
|
+
};
|
|
37
26
|
}
|
|
38
|
-
|
|
39
|
-
// can retroactively install different zones.
|
|
40
|
-
const testProxyZone = ambientZone.fork(new ProxyZoneSpec());
|
|
27
|
+
var testProxyZone = ambientZone.fork(new ProxyZoneSpec());
|
|
41
28
|
function wrapTestInZone(testBody) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return testBody.length === 0
|
|
58
|
-
? () => testProxyZone.run(testBody, null)
|
|
59
|
-
: (done) => testProxyZone.run(testBody, null, [done]);
|
|
60
|
-
}
|
|
61
|
-
return wrappedFunc;
|
|
29
|
+
if (testBody === void 0) return;
|
|
30
|
+
const wrappedFunc = function(...args) {
|
|
31
|
+
return testProxyZone.run(testBody, null, args);
|
|
32
|
+
};
|
|
33
|
+
try {
|
|
34
|
+
Object.defineProperty(wrappedFunc, "length", {
|
|
35
|
+
configurable: true,
|
|
36
|
+
writable: true,
|
|
37
|
+
enumerable: false
|
|
38
|
+
});
|
|
39
|
+
wrappedFunc.length = testBody.length;
|
|
40
|
+
} catch (e) {
|
|
41
|
+
return testBody.length === 0 ? () => testProxyZone.run(testBody, null) : (done) => testProxyZone.run(testBody, null, [done]);
|
|
42
|
+
}
|
|
43
|
+
return wrappedFunc;
|
|
62
44
|
}
|
|
63
45
|
/**
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
46
|
+
* bind describe method to wrap describe.each function
|
|
47
|
+
*/
|
|
48
|
+
var bindDescribe = (self, originalVitestFn) => function(...eachArgs) {
|
|
49
|
+
return function(...args) {
|
|
50
|
+
args[1] = wrapDescribeInZone(args[1]);
|
|
51
|
+
return originalVitestFn.apply(self, eachArgs).apply(self, args);
|
|
52
|
+
};
|
|
71
53
|
};
|
|
72
54
|
/**
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
55
|
+
* bind test method to wrap test.each function
|
|
56
|
+
*/
|
|
57
|
+
var bindTest = (self, originalVitestFn) => function(...eachArgs) {
|
|
58
|
+
return function(...args) {
|
|
59
|
+
args[1] = wrapTestInZone(args[1]);
|
|
60
|
+
return originalVitestFn.apply(self, eachArgs).apply(self, args);
|
|
61
|
+
};
|
|
80
62
|
};
|
|
81
|
-
[
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
63
|
+
["describe"].forEach((methodName) => {
|
|
64
|
+
const originalvitestFn = env[methodName];
|
|
65
|
+
env[methodName] = function(...args) {
|
|
66
|
+
args[1] = wrapDescribeInZone(args[1]);
|
|
67
|
+
return originalvitestFn.apply(this, args);
|
|
68
|
+
};
|
|
69
|
+
env[methodName].each = bindDescribe(originalvitestFn, originalvitestFn.each);
|
|
70
|
+
if (methodName === "describe") {
|
|
71
|
+
env[methodName].only = bindDescribe(originalvitestFn, originalvitestFn.only);
|
|
72
|
+
env[methodName].skip = bindDescribe(originalvitestFn, originalvitestFn.skip);
|
|
73
|
+
}
|
|
92
74
|
});
|
|
93
|
-
[
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
};
|
|
106
|
-
}
|
|
75
|
+
["test", "it"].forEach((methodName) => {
|
|
76
|
+
const originalvitestFn = env[methodName];
|
|
77
|
+
env[methodName] = function(...args) {
|
|
78
|
+
args[1] = wrapTestInZone(args[1]);
|
|
79
|
+
return originalvitestFn.apply(this, args);
|
|
80
|
+
};
|
|
81
|
+
env[methodName].each = bindTest(originalvitestFn, originalvitestFn.each);
|
|
82
|
+
env[methodName].only = bindTest(originalvitestFn, originalvitestFn.only);
|
|
83
|
+
env[methodName].skip = bindTest(originalvitestFn, originalvitestFn.skip);
|
|
84
|
+
if (methodName === "test" || methodName === "it") env[methodName].todo = function(...args) {
|
|
85
|
+
return originalvitestFn.todo.apply(this, args);
|
|
86
|
+
};
|
|
107
87
|
});
|
|
108
|
-
[
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
88
|
+
[
|
|
89
|
+
"beforeEach",
|
|
90
|
+
"afterEach",
|
|
91
|
+
"beforeAll",
|
|
92
|
+
"afterAll"
|
|
93
|
+
].forEach((methodName) => {
|
|
94
|
+
const originalvitestFn = env[methodName];
|
|
95
|
+
env[methodName] = function(...args) {
|
|
96
|
+
args[0] = wrapTestInZone(args[0]);
|
|
97
|
+
return originalvitestFn.apply(this, args);
|
|
98
|
+
};
|
|
114
99
|
});
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtem9uZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3ZpdGVzdC1hbmd1bGFyL3NldHVwLXpvbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxTQUFTLENBQUM7QUFDakIsT0FBTywyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8saUJBQWlCLENBQUM7QUFFekIsT0FBTyxzQkFBc0IsQ0FBQztBQUM5Qjs7O0dBR0c7QUFDSCxpQkFBaUI7QUFDakIsTUFBTSxJQUFJLEdBQUksVUFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUV6QyxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztJQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDN0MsQ0FBQztBQUVELElBQUssVUFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQzFELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUEsVUFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLElBQUksQ0FBQztBQUNwRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQ2xELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUU1QyxJQUFJLGdCQUFnQixLQUFLLFNBQVMsRUFBRSxDQUFDO0lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELENBQUMsQ0FBQztBQUMzRSxDQUFDO0FBQ0QsSUFBSSxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7SUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLEdBQUcsR0FBRyxVQUFpQixDQUFDO0FBQzlCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxP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QUFDLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6RSxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV6RSxJQUFJLFVBQVUsS0FBSyxNQUFNLElBQUksVUFBVSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2pELEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLEdBQUcsVUFBVSxHQUFHLElBQVM7WUFDM0MsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFDLENBQUM7QUFFSCxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO0lBQzFFLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXpDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxVQUFVLEdBQUcsSUFBVztRQUN4QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxDLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnem9uZS5qcyc7XG5pbXBvcnQgJ3pvbmUuanMvcGx1Z2lucy9zeW5jLXRlc3QnO1xuaW1wb3J0ICd6b25lLmpzL3BsdWdpbnMvcHJveHknO1xuaW1wb3J0ICd6b25lLmpzL3Rlc3RpbmcnO1xuXG5pbXBvcnQgJy4vc2V0dXAtc25hcHNob3RzLmpzJztcbi8qKlxuICogUGF0Y2ggVml0ZXN0J3MgZGVzY3JpYmUvdGVzdC9iZWZvcmVFYWNoL2FmdGVyRWFjaCBmdW5jdGlvbnMgc28gdGVzdCBjb2RlXG4gKiBhbHdheXMgcnVucyBpbiBhIHRlc3Rab25lIChQcm94eVpvbmUpLlxuICovXG4vKiBnbG9iYWwgWm9uZSAqL1xuY29uc3QgWm9uZSA9IChnbG9iYWxUaGlzIGFzIGFueSlbJ1pvbmUnXTtcblxuaWYgKFpvbmUgPT09IHVuZGVmaW5lZCkge1xuICB0aHJvdyBuZXcgRXJyb3IoJ01pc3Npbmc6IFpvbmUgKHpvbmUuanMpJyk7XG59XG5cbmlmICgoZ2xvYmFsVGhpcyBhcyBhbnkpWydfX3ZpdGVzdF96b25lX3BhdGNoX18nXSA9PT0gdHJ1ZSkge1xuICB0aHJvdyBuZXcgRXJyb3IoXCIndml0ZXN0JyBoYXMgYWxyZWFkeSBiZWVuIHBhdGNoZWQgd2l0aCAnWm9uZScuXCIpO1xufVxuXG4oZ2xvYmFsVGhpcyBhcyBhbnkpWydfX3ZpdGVzdF96b25lX3BhdGNoX18nXSA9IHRydWU7XG5jb25zdCBTeW5jVGVzdFpvbmVTcGVjID0gWm9uZVsnU3luY1Rlc3Rab25lU3BlYyddO1xuY29uc3QgUHJveHlab25lU3BlYyA9IFpvbmVbJ1Byb3h5Wm9uZVNwZWMnXTtcblxuaWYgKFN5bmNUZXN0Wm9uZVNwZWMgPT09IHVuZGVmaW5lZCkge1xuICB0aHJvdyBuZXcgRXJyb3IoJ01pc3Npbmc6IFN5bmNUZXN0Wm9uZVNwZWMgKHpvbmUuanMvcGx1Z2lucy9zeW5jLXRlc3QpJyk7XG59XG5pZiAoUHJveHlab25lU3BlYyA9PT0gdW5kZWZpbmVkKSB7XG4gIHRocm93IG5ldyBFcnJvcignTWlzc2luZzogUHJveHlab25lU3BlYyAoem9uZS5qcy9wbHVnaW5zL3Byb3h5LmpzKScpO1xufVxuXG5jb25zdCBlbnYgPSBnbG9iYWxUaGlzIGFzIGFueTtcbmNvbnN0IGFtYmllbnRab25lID0gWm9uZS5jdXJyZW50O1xuXG4vLyBDcmVhdGUgYSBzeW5jaHJvbm91cy1vbmx5IHpvbmUgaW4gd2hpY2ggdG8gcnVuIGBkZXNjcmliZWAgYmxvY2tzIGluIG9yZGVyIHRvXG4vLyByYWlzZSBhbiBlcnJvciBpZiBhbnkgYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMgYXJlIGF0dGVtcHRlZFxuLy8gaW5zaWRlIG9mIGEgYGRlc2NyaWJlYCBidXQgb3V0c2lkZSBvZiBhIGBiZWZvcmVFYWNoYCBvciBgaXRgLlxuY29uc3Qgc3luY1pvbmUgPSBhbWJpZW50Wm9uZS5mb3JrKG5ldyBTeW5jVGVzdFpvbmVTcGVjKCd2aXRlc3QuZGVzY3JpYmUnKSk7XG5mdW5jdGlvbiB3cmFwRGVzY3JpYmVJblpvbmUoZGVzY3JpYmVCb2R5OiBhbnkpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICguLi5hcmdzOiBhbnkpIHtcbiAgICByZXR1cm4gc3luY1pvbmUucnVuKGRlc2NyaWJlQm9keSwgbnVsbCwgYXJncyk7XG4gIH07XG59XG5cbi8vIENyZWF0ZSBhIHByb3h5IHpvbmUgaW4gd2hpY2ggdG8gcnVuIGB0ZXN0YCBibG9ja3Mgc28gdGhhdCB0aGUgdGVzdHMgZnVuY3Rpb25cbi8vIGNhbiByZXRyb2FjdGl2ZWx5IGluc3RhbGwgZGlmZmVyZW50IHpvbmVzLlxuY29uc3QgdGVzdFByb3h5Wm9uZSA9IGFtYmllbnRab25lLmZvcmsobmV3IFByb3h5Wm9uZVNwZWMoKSk7XG5mdW5jdGlvbiB3cmFwVGVzdEluWm9uZSh0ZXN0Qm9keTogc3RyaW5nIHwgYW55W10gfCB1bmRlZmluZWQpIHtcbiAgaWYgKHRlc3RCb2R5ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCB3cmFwcGVkRnVuYyA9IGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xuICAgIHJldHVybiB0ZXN0UHJveHlab25lLnJ1bih0ZXN0Qm9keSwgbnVsbCwgYXJncyk7XG4gIH07XG4gIHRyeSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHdyYXBwZWRGdW5jLCAnbGVuZ3RoJywge1xuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICB9KTtcbiAgICB3cmFwcGVkRnVuYy5sZW5ndGggPSB0ZXN0Qm9keS5sZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gdGVzdEJvZHkubGVuZ3RoID09PSAwXG4gICAgICA/ICgpID0+IHRlc3RQcm94eVpvbmUucnVuKHRlc3RCb2R5LCBudWxsKVxuICAgICAgOiAoZG9uZTogYW55KSA9PiB0ZXN0UHJveHlab25lLnJ1bih0ZXN0Qm9keSwgbnVsbCwgW2RvbmVdKTtcbiAgfVxuXG4gIHJldHVybiB3cmFwcGVkRnVuYztcbn1cblxuLyoqXG4gKiBiaW5kIGRlc2NyaWJlIG1ldGhvZCB0byB3cmFwIGRlc2NyaWJlLmVhY2ggZnVuY3Rpb25cbiAqL1xuY29uc3QgYmluZERlc2NyaWJlID0gKFxuICBzZWxmOiBhbnksXG4gIG9yaWdpbmFsVml0ZXN0Rm46IHtcbiAgICBhcHBseTogKFxuICAgICAgYXJnMDogYW55LFxuICAgICAgYXJnMTogYW55W10sXG4gICAgKSA9PiB7XG4gICAgICAoKTogYW55O1xuICAgICAgbmV3ICgpOiBhbnk7XG4gICAgICBhcHBseTogeyAoYXJnMDogYW55LCBhcmcxOiBhbnlbXSk6IGFueTsgbmV3ICgpOiBhbnkgfTtcbiAgICB9O1xuICB9LFxuKSA9PlxuICBmdW5jdGlvbiAoLi4uZWFjaEFyZ3M6IGFueSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJnczogYW55W10pIHtcbiAgICAgIGFyZ3NbMV0gPSB3cmFwRGVzY3JpYmVJblpvbmUoYXJnc1sxXSk7XG5cbiAgICAgIHJldHVybiBvcmlnaW5hbFZpdGVzdEZuLmFwcGx5KHNlbGYsIGVhY2hBcmdzKS5hcHBseShzZWxmLCBhcmdzKTtcbiAgICB9O1xuICB9O1xuXG4vKipcbiAqIGJpbmQgdGVzdCBtZXRob2QgdG8gd3JhcCB0ZXN0LmVhY2ggZnVuY3Rpb25cbiAqL1xuY29uc3QgYmluZFRlc3QgPSAoXG4gIHNlbGY6IGFueSxcbiAgb3JpZ2luYWxWaXRlc3RGbjoge1xuICAgIGFwcGx5OiAoXG4gICAgICBhcmcwOiBhbnksXG4gICAgICBhcmcxOiBhbnlbXSxcbiAgICApID0+IHtcbiAgICAgICgpOiBhbnk7XG4gICAgICBuZXcgKCk6IGFueTtcbiAgICAgIGFwcGx5OiB7IChhcmcwOiBhbnksIGFyZzE6IGFueVtdKTogYW55OyBuZXcgKCk6IGFueSB9O1xuICAgIH07XG4gIH0sXG4pID0+XG4gIGZ1bmN0aW9uICguLi5lYWNoQXJnczogYW55KSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgYXJnc1sxXSA9IHdyYXBUZXN0SW5ab25lKGFyZ3NbMV0pO1xuXG4gICAgICByZXR1cm4gb3JpZ2luYWxWaXRlc3RGbi5hcHBseShzZWxmLCBlYWNoQXJncykuYXBwbHkoc2VsZiwgYXJncyk7XG4gICAgfTtcbiAgfTtcblxuWydkZXNjcmliZSddLmZvckVhY2goKG1ldGhvZE5hbWUpID0+IHtcbiAgY29uc3Qgb3JpZ2luYWx2aXRlc3RGbiA9IGVudlttZXRob2ROYW1lXTtcbiAgZW52W21ldGhvZE5hbWVdID0gZnVuY3Rpb24gKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgYXJnc1sxXSA9IHdyYXBEZXNjcmliZUluWm9uZShhcmdzWzFdKTtcblxuICAgIHJldHVybiBvcmlnaW5hbHZpdGVzdEZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICB9O1xuICBlbnZbbWV0aG9kTmFtZV0uZWFjaCA9IGJpbmREZXNjcmliZShvcmlnaW5hbHZpdGVzdEZuLCBvcmlnaW5hbHZpdGVzdEZuLmVhY2gpO1xuICBpZiAobWV0aG9kTmFtZSA9PT0gJ2Rlc2NyaWJlJykge1xuICAgIGVudlttZXRob2ROYW1lXS5vbmx5ID0gYmluZERlc2NyaWJlKFxuICAgICAgb3JpZ2luYWx2aXRlc3RGbixcbiAgICAgIG9yaWdpbmFsdml0ZXN0Rm4ub25seSxcbiAgICApO1xuICAgIGVudlttZXRob2ROYW1lXS5za2lwID0gYmluZERlc2NyaWJlKFxuICAgICAgb3JpZ2luYWx2aXRlc3RGbixcbiAgICAgIG9yaWdpbmFsdml0ZXN0Rm4uc2tpcCxcbiAgICApO1xuICB9XG59KTtcblxuWyd0ZXN0JywgJ2l0J10uZm9yRWFjaCgobWV0aG9kTmFtZSkgPT4ge1xuICBjb25zdCBvcmlnaW5hbHZpdGVzdEZuID0gZW52W21ldGhvZE5hbWVdO1xuICBlbnZbbWV0aG9kTmFtZV0gPSBmdW5jdGlvbiAoLi4uYXJnczogYW55W10pIHtcbiAgICBhcmdzWzFdID0gd3JhcFRlc3RJblpvbmUoYXJnc1sxXSk7XG5cbiAgICByZXR1cm4gb3JpZ2luYWx2aXRlc3RGbi5hcHBseSh0aGlzLCBhcmdzKTtcbiAgfTtcbiAgZW52W21ldGhvZE5hbWVdLmVhY2ggPSBiaW5kVGVzdChvcmlnaW5hbHZpdGVzdEZuLCBvcmlnaW5hbHZpdGVzdEZuLmVhY2gpO1xuICBlbnZbbWV0aG9kTmFtZV0ub25seSA9IGJpbmRUZXN0KG9yaWdpbmFsdml0ZXN0Rm4sIG9yaWdpbmFsdml0ZXN0Rm4ub25seSk7XG4gIGVudlttZXRob2ROYW1lXS5za2lwID0gYmluZFRlc3Qob3JpZ2luYWx2aXRlc3RGbiwgb3JpZ2luYWx2aXRlc3RGbi5za2lwKTtcblxuICBpZiAobWV0aG9kTmFtZSA9PT0gJ3Rlc3QnIHx8IG1ldGhvZE5hbWUgPT09ICdpdCcpIHtcbiAgICBlbnZbbWV0aG9kTmFtZV0udG9kbyA9IGZ1bmN0aW9uICguLi5hcmdzOiBhbnkpIHtcbiAgICAgIHJldHVybiBvcmlnaW5hbHZpdGVzdEZuLnRvZG8uYXBwbHkodGhpcywgYXJncyk7XG4gICAgfTtcbiAgfVxufSk7XG5cblsnYmVmb3JlRWFjaCcsICdhZnRlckVhY2gnLCAnYmVmb3JlQWxsJywgJ2FmdGVyQWxsJ10uZm9yRWFjaCgobWV0aG9kTmFtZSkgPT4ge1xuICBjb25zdCBvcmlnaW5hbHZpdGVzdEZuID0gZW52W21ldGhvZE5hbWVdO1xuXG4gIGVudlttZXRob2ROYW1lXSA9IGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xuICAgIGFyZ3NbMF0gPSB3cmFwVGVzdEluWm9uZShhcmdzWzBdKTtcblxuICAgIHJldHVybiBvcmlnaW5hbHZpdGVzdEZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICB9O1xufSk7XG4iXX0=
|
|
100
|
+
//#endregion
|
|
101
|
+
|
|
102
|
+
//# sourceMappingURL=setup-zone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-zone.js","names":[],"sources":["../../../packages/vitest-angular/setup-zone.ts"],"sourcesContent":["import 'zone.js';\nimport 'zone.js/plugins/sync-test';\nimport 'zone.js/plugins/proxy';\nimport 'zone.js/testing';\n\nimport './setup-snapshots.js';\n/**\n * Patch Vitest's describe/test/beforeEach/afterEach functions so test code\n * always runs in a testZone (ProxyZone).\n */\n/* global Zone */\nconst Zone = (globalThis as any)['Zone'];\n\nif (Zone === undefined) {\n throw new Error('Missing: Zone (zone.js)');\n}\n\nif ((globalThis as any)['__vitest_zone_patch__'] === true) {\n throw new Error(\"'vitest' has already been patched with 'Zone'.\");\n}\n\n(globalThis as any)['__vitest_zone_patch__'] = true;\nconst SyncTestZoneSpec = Zone['SyncTestZoneSpec'];\nconst ProxyZoneSpec = Zone['ProxyZoneSpec'];\n\nif (SyncTestZoneSpec === undefined) {\n throw new Error('Missing: SyncTestZoneSpec (zone.js/plugins/sync-test)');\n}\nif (ProxyZoneSpec === undefined) {\n throw new Error('Missing: ProxyZoneSpec (zone.js/plugins/proxy.js)');\n}\n\nconst env = globalThis as any;\nconst ambientZone = Zone.current;\n\n// Create a synchronous-only zone in which to run `describe` blocks in order to\n// raise an error if any asynchronous operations are attempted\n// inside of a `describe` but outside of a `beforeEach` or `it`.\nconst syncZone = ambientZone.fork(new SyncTestZoneSpec('vitest.describe'));\nfunction wrapDescribeInZone(describeBody: any) {\n return function (...args: any) {\n return syncZone.run(describeBody, null, args);\n };\n}\n\n// Create a proxy zone in which to run `test` blocks so that the tests function\n// can retroactively install different zones.\nconst testProxyZone = ambientZone.fork(new ProxyZoneSpec());\nfunction wrapTestInZone(testBody: string | any[] | undefined) {\n if (testBody === undefined) {\n return;\n }\n\n const wrappedFunc = function (...args: any[]) {\n return testProxyZone.run(testBody, null, args);\n };\n try {\n Object.defineProperty(wrappedFunc, 'length', {\n configurable: true,\n writable: true,\n enumerable: false,\n });\n wrappedFunc.length = testBody.length;\n } catch (e) {\n return testBody.length === 0\n ? () => testProxyZone.run(testBody, null)\n : (done: any) => testProxyZone.run(testBody, null, [done]);\n }\n\n return wrappedFunc;\n}\n\n/**\n * bind describe method to wrap describe.each function\n */\nconst bindDescribe = (\n self: any,\n originalVitestFn: {\n apply: (\n arg0: any,\n arg1: any[],\n ) => {\n (): any;\n new (): any;\n apply: { (arg0: any, arg1: any[]): any; new (): any };\n };\n },\n) =>\n function (...eachArgs: any) {\n return function (...args: any[]) {\n args[1] = wrapDescribeInZone(args[1]);\n\n return originalVitestFn.apply(self, eachArgs).apply(self, args);\n };\n };\n\n/**\n * bind test method to wrap test.each function\n */\nconst bindTest = (\n self: any,\n originalVitestFn: {\n apply: (\n arg0: any,\n arg1: any[],\n ) => {\n (): any;\n new (): any;\n apply: { (arg0: any, arg1: any[]): any; new (): any };\n };\n },\n) =>\n function (...eachArgs: any) {\n return function (...args: any[]) {\n args[1] = wrapTestInZone(args[1]);\n\n return originalVitestFn.apply(self, eachArgs).apply(self, args);\n };\n };\n\n['describe'].forEach((methodName) => {\n const originalvitestFn = env[methodName];\n env[methodName] = function (...args: any[]) {\n args[1] = wrapDescribeInZone(args[1]);\n\n return originalvitestFn.apply(this, args);\n };\n env[methodName].each = bindDescribe(originalvitestFn, originalvitestFn.each);\n if (methodName === 'describe') {\n env[methodName].only = bindDescribe(\n originalvitestFn,\n originalvitestFn.only,\n );\n env[methodName].skip = bindDescribe(\n originalvitestFn,\n originalvitestFn.skip,\n );\n }\n});\n\n['test', 'it'].forEach((methodName) => {\n const originalvitestFn = env[methodName];\n env[methodName] = function (...args: any[]) {\n args[1] = wrapTestInZone(args[1]);\n\n return originalvitestFn.apply(this, args);\n };\n env[methodName].each = bindTest(originalvitestFn, originalvitestFn.each);\n env[methodName].only = bindTest(originalvitestFn, originalvitestFn.only);\n env[methodName].skip = bindTest(originalvitestFn, originalvitestFn.skip);\n\n if (methodName === 'test' || methodName === 'it') {\n env[methodName].todo = function (...args: any) {\n return originalvitestFn.todo.apply(this, args);\n };\n }\n});\n\n['beforeEach', 'afterEach', 'beforeAll', 'afterAll'].forEach((methodName) => {\n const originalvitestFn = env[methodName];\n\n env[methodName] = function (...args: any[]) {\n args[0] = wrapTestInZone(args[0]);\n\n return originalvitestFn.apply(this, args);\n };\n});\n"],"mappings":"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"}
|
package/src/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
export {
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy92aXRlc3QtYW5ndWxhci9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxhQUFhLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyx3QkFBd0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLHdCQUF3QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdml0ZXN0QnVpbGRlciBmcm9tICcuL2xpYi9idWlsZGVycy90ZXN0L3ZpdGVzdC5pbXBsJztcbmltcG9ydCB2aXRlc3RBcHBsaWNhdGlvbkJ1aWxkZXIgZnJvbSAnLi9saWIvYnVpbGRlcnMvYnVpbGQvdml0ZXN0LmltcGwnO1xuXG5leHBvcnQgeyB2aXRlc3RCdWlsZGVyLCB2aXRlc3RBcHBsaWNhdGlvbkJ1aWxkZXIgfTtcbiJdfQ==
|
|
1
|
+
import vitest_impl_default$1 from "./lib/builders/test/vitest.impl.js";
|
|
2
|
+
import vitest_impl_default from "./lib/builders/build/vitest.impl.js";
|
|
3
|
+
export { vitest_impl_default as vitestApplicationBuilder, vitest_impl_default$1 as vitestBuilder };
|