@analogjs/vitest-angular 3.0.0-alpha.5 → 3.0.0-alpha.6

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/README.md CHANGED
@@ -126,7 +126,7 @@ The `setupTestBed()` function accepts an optional configuration object with the
126
126
 
127
127
  - `zoneless` (boolean): Whether to use zoneless change detection (default: `true`)
128
128
  - `providers` (`Type<any>[]`): Additional providers to include in the test environment (default: `[]`)
129
- - `browserMode` (boolean): Enables visual test preview in Vitest browser mode by keeping the component rendered, allowing you to inspect its final state (default: `false`)
129
+ - `teardown.destroyAfterEach` (boolean): Whether to destroy the test environment after each test. Set to `false` to keep the component rendered, allowing you to inspect its final state. (default: `true`)
130
130
 
131
131
  **Example with options:**
132
132
 
@@ -134,7 +134,7 @@ The `setupTestBed()` function accepts an optional configuration object with the
134
134
  setupTestBed({
135
135
  zoneless: true,
136
136
  providers: [],
137
- browserMode: false,
137
+ teardown: { destroyAfterEach: false },
138
138
  });
139
139
  ```
140
140
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@analogjs/vitest-angular",
3
- "version": "3.0.0-alpha.5",
3
+ "version": "3.0.0-alpha.6",
4
4
  "description": "Vitest Builder for Angular",
5
5
  "type": "module",
6
6
  "author": "Brandon Roberts <robertsbt@gmail.com>",
@@ -1,8 +1,15 @@
1
- import { Provider } from '@angular/core';
1
+ import { EnvironmentProviders, Provider } from '@angular/core';
2
2
  type TestBedSetupOptions = {
3
3
  zoneless?: boolean;
4
- providers?: Provider[];
4
+ providers?: (Provider | EnvironmentProviders)[];
5
+ /**
6
+ * @deprecated Use `teardown.destroyAfterEach` instead.
7
+ * @sunset 3.0.0
8
+ */
5
9
  browserMode?: boolean;
10
+ teardown?: {
11
+ destroyAfterEach: boolean;
12
+ };
6
13
  };
7
- export declare function setupTestBed({ zoneless, providers, browserMode, }?: TestBedSetupOptions): void;
14
+ export declare function setupTestBed({ zoneless, providers, browserMode, teardown, }?: TestBedSetupOptions): void;
8
15
  export {};
package/setup-testbed.js CHANGED
@@ -4,7 +4,7 @@ import { ɵgetCleanupHook as getCleanupHook, getTestBed, } from '@angular/core/t
4
4
  import { BrowserTestingModule, platformBrowserTesting, } from '@angular/platform-browser/testing';
5
5
  import { afterEach, beforeEach } from 'vitest';
6
6
  const ANGULAR_TESTBED_SETUP = Symbol.for('testbed-setup');
7
- export function setupTestBed({ zoneless = true, providers = [], browserMode = false, } = {}) {
7
+ export function setupTestBed({ zoneless = true, providers = [], browserMode = false, teardown, } = {}) {
8
8
  beforeEach(getCleanupHook(false));
9
9
  afterEach(getCleanupHook(true));
10
10
  if (!globalThis[ANGULAR_TESTBED_SETUP]) {
@@ -15,11 +15,16 @@ export function setupTestBed({ zoneless = true, providers = [], browserMode = fa
15
15
  NgModule({
16
16
  providers: [
17
17
  ...(zoneless ? [provideZonelessChangeDetection()] : []),
18
- providers,
18
+ ...providers,
19
19
  ],
20
20
  })
21
21
  ], TestModule);
22
- getTestBed().initTestEnvironment([BrowserTestingModule, TestModule], platformBrowserTesting(), browserMode ? { teardown: { destroyAfterEach: false } } : undefined);
22
+ getTestBed().initTestEnvironment([BrowserTestingModule, TestModule], platformBrowserTesting(), {
23
+ teardown: {
24
+ ...{ destroyAfterEach: !browserMode },
25
+ ...teardown,
26
+ },
27
+ });
23
28
  }
24
29
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtdGVzdGJlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3ZpdGVzdC1hbmd1bGFyL3NldHVwLXRlc3RiZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxRQUFRLEVBRVIsOEJBQThCLEdBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxlQUFlLElBQUksY0FBYyxFQUNqQyxVQUFVLEdBQ1gsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHNCQUFzQixHQUN2QixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRS9DLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQVExRCxNQUFNLFVBQVUsWUFBWSxDQUFDLEVBQzNCLFFBQVEsR0FBRyxJQUFJLEVBQ2YsU0FBUyxHQUFHLEVBQUUsRUFDZCxXQUFXLEdBQUcsS0FBSyxNQUNJLEVBQUU7SUFDekIsVUFBVSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVoQyxJQUFJLENBQUUsVUFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUM7UUFDL0MsVUFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLElBQUksQ0FBQztRQVFsRCxJQUFNLFVBQVUsR0FBaEIsTUFBTSxVQUFVO1NBQUcsQ0FBQTtRQUFiLFVBQVU7WUFOZixRQUFRLENBQUM7Z0JBQ1IsU0FBUyxFQUFFO29CQUNULEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsOEJBQThCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ3ZELFNBQVM7aUJBQ1Y7YUFDRixDQUFDO1dBQ0ksVUFBVSxDQUFHO1FBRW5CLFVBQVUsRUFBRSxDQUFDLG1CQUFtQixDQUM5QixDQUFDLG9CQUFvQixFQUFFLFVBQVUsQ0FBQyxFQUNsQyxzQkFBc0IsRUFBRSxFQUN4QixXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUNwRSxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBOZ01vZHVsZSxcbiAgUHJvdmlkZXIsXG4gIHByb3ZpZGVab25lbGVzc0NoYW5nZURldGVjdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICDJtWdldENsZWFudXBIb29rIGFzIGdldENsZWFudXBIb29rLFxuICBnZXRUZXN0QmVkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHtcbiAgQnJvd3NlclRlc3RpbmdNb2R1bGUsXG4gIHBsYXRmb3JtQnJvd3NlclRlc3RpbmcsXG59IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvdGVzdGluZyc7XG5pbXBvcnQgeyBhZnRlckVhY2gsIGJlZm9yZUVhY2ggfSBmcm9tICd2aXRlc3QnO1xuXG5jb25zdCBBTkdVTEFSX1RFU1RCRURfU0VUVVAgPSBTeW1ib2wuZm9yKCd0ZXN0YmVkLXNldHVwJyk7XG5cbnR5cGUgVGVzdEJlZFNldHVwT3B0aW9ucyA9IHtcbiAgem9uZWxlc3M/OiBib29sZWFuO1xuICBwcm92aWRlcnM/OiBQcm92aWRlcltdO1xuICBicm93c2VyTW9kZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBUZXN0QmVkKHtcbiAgem9uZWxlc3MgPSB0cnVlLFxuICBwcm92aWRlcnMgPSBbXSxcbiAgYnJvd3Nlck1vZGUgPSBmYWxzZSxcbn06IFRlc3RCZWRTZXR1cE9wdGlvbnMgPSB7fSk6IHZvaWQge1xuICBiZWZvcmVFYWNoKGdldENsZWFudXBIb29rKGZhbHNlKSk7XG4gIGFmdGVyRWFjaChnZXRDbGVhbnVwSG9vayh0cnVlKSk7XG5cbiAgaWYgKCEoZ2xvYmFsVGhpcyBhcyBhbnkpW0FOR1VMQVJfVEVTVEJFRF9TRVRVUF0pIHtcbiAgICAoZ2xvYmFsVGhpcyBhcyBhbnkpW0FOR1VMQVJfVEVTVEJFRF9TRVRVUF0gPSB0cnVlO1xuXG4gICAgQE5nTW9kdWxlKHtcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAuLi4oem9uZWxlc3MgPyBbcHJvdmlkZVpvbmVsZXNzQ2hhbmdlRGV0ZWN0aW9uKCldIDogW10pLFxuICAgICAgICBwcm92aWRlcnMsXG4gICAgICBdLFxuICAgIH0pXG4gICAgY2xhc3MgVGVzdE1vZHVsZSB7fVxuXG4gICAgZ2V0VGVzdEJlZCgpLmluaXRUZXN0RW52aXJvbm1lbnQoXG4gICAgICBbQnJvd3NlclRlc3RpbmdNb2R1bGUsIFRlc3RNb2R1bGVdLFxuICAgICAgcGxhdGZvcm1Ccm93c2VyVGVzdGluZygpLFxuICAgICAgYnJvd3Nlck1vZGUgPyB7IHRlYXJkb3duOiB7IGRlc3Ryb3lBZnRlckVhY2g6IGZhbHNlIH0gfSA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAtdGVzdGJlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3ZpdGVzdC1hbmd1bGFyL3NldHVwLXRlc3RiZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxRQUFRLEVBRVIsOEJBQThCLEdBQy9CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxlQUFlLElBQUksY0FBYyxFQUNqQyxVQUFVLEdBQ1gsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHNCQUFzQixHQUN2QixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRS9DLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQWUxRCxNQUFNLFVBQVUsWUFBWSxDQUFDLEVBQzNCLFFBQVEsR0FBRyxJQUFJLEVBQ2YsU0FBUyxHQUFHLEVBQUUsRUFDZCxXQUFXLEdBQUcsS0FBSyxFQUNuQixRQUFRLE1BQ2UsRUFBRTtJQUN6QixVQUFVLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWhDLElBQUksQ0FBRSxVQUFrQixDQUFDLHFCQUFxQixDQUFDLEVBQUUsQ0FBQztRQUMvQyxVQUFrQixDQUFDLHFCQUFxQixDQUFDLEdBQUcsSUFBSSxDQUFDO1FBUWxELElBQU0sVUFBVSxHQUFoQixNQUFNLFVBQVU7U0FBRyxDQUFBO1FBQWIsVUFBVTtZQU5mLFFBQVEsQ0FBQztnQkFDUixTQUFTLEVBQUU7b0JBQ1QsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDdkQsR0FBRyxTQUFTO2lCQUNiO2FBQ0YsQ0FBQztXQUNJLFVBQVUsQ0FBRztRQUVuQixVQUFVLEVBQUUsQ0FBQyxtQkFBbUIsQ0FDOUIsQ0FBQyxvQkFBb0IsRUFBRSxVQUFVLENBQUMsRUFDbEMsc0JBQXNCLEVBQUUsRUFDeEI7WUFDRSxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLGdCQUFnQixFQUFFLENBQUMsV0FBVyxFQUFFO2dCQUNyQyxHQUFHLFFBQVE7YUFDWjtTQUNGLENBQ0YsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRW52aXJvbm1lbnRQcm92aWRlcnMsXG4gIE5nTW9kdWxlLFxuICBQcm92aWRlcixcbiAgcHJvdmlkZVpvbmVsZXNzQ2hhbmdlRGV0ZWN0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIMm1Z2V0Q2xlYW51cEhvb2sgYXMgZ2V0Q2xlYW51cEhvb2ssXG4gIGdldFRlc3RCZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQge1xuICBCcm93c2VyVGVzdGluZ01vZHVsZSxcbiAgcGxhdGZvcm1Ccm93c2VyVGVzdGluZyxcbn0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci90ZXN0aW5nJztcbmltcG9ydCB7IGFmdGVyRWFjaCwgYmVmb3JlRWFjaCB9IGZyb20gJ3ZpdGVzdCc7XG5cbmNvbnN0IEFOR1VMQVJfVEVTVEJFRF9TRVRVUCA9IFN5bWJvbC5mb3IoJ3Rlc3RiZWQtc2V0dXAnKTtcblxudHlwZSBUZXN0QmVkU2V0dXBPcHRpb25zID0ge1xuICB6b25lbGVzcz86IGJvb2xlYW47XG4gIHByb3ZpZGVycz86IChQcm92aWRlciB8IEVudmlyb25tZW50UHJvdmlkZXJzKVtdO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGB0ZWFyZG93bi5kZXN0cm95QWZ0ZXJFYWNoYCBpbnN0ZWFkLlxuICAgKiBAc3Vuc2V0IDMuMC4wXG4gICAqL1xuICBicm93c2VyTW9kZT86IGJvb2xlYW47XG4gIHRlYXJkb3duPzoge1xuICAgIGRlc3Ryb3lBZnRlckVhY2g6IGJvb2xlYW47XG4gIH07XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBUZXN0QmVkKHtcbiAgem9uZWxlc3MgPSB0cnVlLFxuICBwcm92aWRlcnMgPSBbXSxcbiAgYnJvd3Nlck1vZGUgPSBmYWxzZSxcbiAgdGVhcmRvd24sXG59OiBUZXN0QmVkU2V0dXBPcHRpb25zID0ge30pOiB2b2lkIHtcbiAgYmVmb3JlRWFjaChnZXRDbGVhbnVwSG9vayhmYWxzZSkpO1xuICBhZnRlckVhY2goZ2V0Q2xlYW51cEhvb2sodHJ1ZSkpO1xuXG4gIGlmICghKGdsb2JhbFRoaXMgYXMgYW55KVtBTkdVTEFSX1RFU1RCRURfU0VUVVBdKSB7XG4gICAgKGdsb2JhbFRoaXMgYXMgYW55KVtBTkdVTEFSX1RFU1RCRURfU0VUVVBdID0gdHJ1ZTtcblxuICAgIEBOZ01vZHVsZSh7XG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgLi4uKHpvbmVsZXNzID8gW3Byb3ZpZGVab25lbGVzc0NoYW5nZURldGVjdGlvbigpXSA6IFtdKSxcbiAgICAgICAgLi4ucHJvdmlkZXJzLFxuICAgICAgXSxcbiAgICB9KVxuICAgIGNsYXNzIFRlc3RNb2R1bGUge31cblxuICAgIGdldFRlc3RCZWQoKS5pbml0VGVzdEVudmlyb25tZW50KFxuICAgICAgW0Jyb3dzZXJUZXN0aW5nTW9kdWxlLCBUZXN0TW9kdWxlXSxcbiAgICAgIHBsYXRmb3JtQnJvd3NlclRlc3RpbmcoKSxcbiAgICAgIHtcbiAgICAgICAgdGVhcmRvd246IHtcbiAgICAgICAgICAuLi57IGRlc3Ryb3lBZnRlckVhY2g6ICFicm93c2VyTW9kZSB9LFxuICAgICAgICAgIC4uLnRlYXJkb3duLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- export declare const ANALOG_JS_VITE_PLUGIN_ANGULAR = "^3.0.0-alpha.5";
1
+ export declare const ANALOG_JS_VITE_PLUGIN_ANGULAR = "^3.0.0-alpha.6";
2
2
  export declare const JSDOM = "^22.0.0";
3
3
  export declare const VITE_TSCONFIG_PATHS = "^4.2.0";
4
4
  export declare const VITE = "^7.0.0";
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PLAYWRIGHT = exports.VITEST_BROWSER_PLAYWRIGHT = exports.VITEST_V4 = exports.VITE = exports.VITE_TSCONFIG_PATHS = exports.JSDOM = exports.ANALOG_JS_VITE_PLUGIN_ANGULAR = void 0;
4
4
  // Version constants (Angular 20+)
5
- exports.ANALOG_JS_VITE_PLUGIN_ANGULAR = '^3.0.0-alpha.5';
5
+ exports.ANALOG_JS_VITE_PLUGIN_ANGULAR = '^3.0.0-alpha.6';
6
6
  exports.JSDOM = '^22.0.0';
7
7
  exports.VITE_TSCONFIG_PATHS = '^4.2.0';
8
8
  exports.VITE = '^7.0.0';