@zeltjs/testing 0.12.0-canary.2 → 0.12.0

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.
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_src = require("../src-BfVzz7qe.cjs");
2
+ const require_src = require("../src-DfDVLDkX.cjs");
3
3
  //#region src/adapters/bun.ts
4
4
  (0, require("bun:test").afterAll)(require_src.shutdownAll);
5
5
  //#endregion
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-T6FDJjgW.cjs";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-DhFNl12w.cjs";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-CPsI5xbc.js";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-a9MoVdN2.js";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,4 +1,4 @@
1
- import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-BZDngNzF.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-Cd8Vvnai.js";
2
2
  import { afterAll } from "bun:test";
3
3
  //#region src/adapters/bun.ts
4
4
  afterAll(shutdownAll);
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_src = require("../src-BfVzz7qe.cjs");
2
+ const require_src = require("../src-DfDVLDkX.cjs");
3
3
  //#region src/adapters/jest.ts
4
4
  (0, require("@jest/globals").afterAll)(require_src.shutdownAll);
5
5
  //#endregion
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-T6FDJjgW.cjs";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-DhFNl12w.cjs";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-CPsI5xbc.js";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-a9MoVdN2.js";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,4 +1,4 @@
1
- import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-BZDngNzF.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-Cd8Vvnai.js";
2
2
  import { afterAll } from "@jest/globals";
3
3
  //#region src/adapters/jest.ts
4
4
  afterAll(shutdownAll);
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_src = require("../src-BfVzz7qe.cjs");
2
+ const require_src = require("../src-DfDVLDkX.cjs");
3
3
  //#region src/adapters/node.ts
4
4
  (0, require("node:test").after)(require_src.shutdownAll);
5
5
  //#endregion
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-T6FDJjgW.cjs";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-DhFNl12w.cjs";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-CPsI5xbc.js";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-a9MoVdN2.js";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,4 +1,4 @@
1
- import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-BZDngNzF.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-Cd8Vvnai.js";
2
2
  import { after } from "node:test";
3
3
  //#region src/adapters/node.ts
4
4
  after(shutdownAll);
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_src = require("../src-BfVzz7qe.cjs");
2
+ const require_src = require("../src-DfDVLDkX.cjs");
3
3
  //#region src/adapters/vitest.ts
4
4
  (0, require("vitest").afterAll)(require_src.shutdownAll);
5
5
  //#endregion
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-T6FDJjgW.cjs";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-DhFNl12w.cjs";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-CPsI5xbc.js";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "../index-a9MoVdN2.js";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,4 +1,4 @@
1
- import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-BZDngNzF.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-Cd8Vvnai.js";
2
2
  import { afterAll } from "vitest";
3
3
  //#region src/adapters/vitest.ts
4
4
  afterAll(shutdownAll);
@@ -1,4 +1,4 @@
1
- import { ConfigClass, ConfiguredFeature, FeatureApp, RuntimeApp, ZeltPrebuilt } from "@zeltjs/core";
1
+ import { ConfigClass, ConfiguredFeature, ContextMode, FeatureApp, RuntimeApp, ZeltPrebuilt } from "@zeltjs/core";
2
2
 
3
3
  //#region src/global-config.lib.d.ts
4
4
  type AnyConfigClass$2 = ConfigClass<object>;
@@ -14,6 +14,7 @@ declare const getTestDefaults: () => TestDefaults;
14
14
  //#region src/on-test.d.ts
15
15
  type AnyConfigClass$1 = ConfigClass<object>;
16
16
  type OnTestOptions = {
17
+ readonly contextMode?: ContextMode;
17
18
  readonly configs?: readonly AnyConfigClass$1[];
18
19
  readonly prebuilt?: ZeltPrebuilt;
19
20
  };
@@ -44,8 +45,10 @@ type TestTargetResult<T> = {
44
45
  * @throws {ZeltLifecycleStateError}
45
46
  * @throws {ZeltInternalError}
46
47
  * @throws {ZeltReadyFailedError}
48
+ * @throws {FeatureInjectionError}
49
+ * @throws {TypeError}
47
50
  */
48
51
  declare const createTestTarget: <T extends object>(targetClass: new (...args: never[]) => T, options?: CreateTestTargetOptions) => Promise<TestTargetResult<T>>;
49
52
  //#endregion
50
53
  export { shutdownAll as a, getTestDefaults as c, createTestTarget as i, Override as n, onTest as o, TestTargetResult as r, configureTestDefaults as s, CreateTestTargetOptions as t };
51
- //# sourceMappingURL=index-T6FDJjgW.d.cts.map
54
+ //# sourceMappingURL=index-DhFNl12w.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DhFNl12w.d.cts","names":[],"sources":["../src/global-config.lib.ts","../src/on-test.ts","../src/shutdown-registry.lib.ts","../src/test-target.lib.ts"],"mappings":";;;KAEK,gBAAA,GAAiB,WAAA;AAAA,KAEjB,YAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,KAGxB,gBAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,cAKhB,qBAAA,GAAyB,OAAA,EAAS,gBAAA;AAAA,cAIlC,eAAA,QAAsB,YAAA;;;KCN9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,WAAA,GAAc,WAAA;EAAA,SACd,OAAA,YAAmB,gBAAA;EAAA,SACnB,QAAA,GAAW,YAAA;AAAA;AAAA,cAGT,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCdT,WAAA,QAAwB,OAAA;;;KCFhC,cAAA,GAAiB,WAAA;AAAA,KACjB,QAAA,WAAmB,IAAA;AAAA,KAEZ,QAAA;EAAA,SACD,OAAA,EAAS,QAAA,YAAoB,IAAA,cAAkB,CAAA;EAAA,SAC/C,QAAA,EAAU,CAAA;AAAA;AAAA,KAGT,uBAAA;EAAA,SACD,OAAA,YAAmB,cAAA;EAAA,SACnB,SAAA,YAAqB,QAAA;AAAA;AAAA,KAGpB,gBAAA;EAAA,SACD,MAAA,EAAQ,CAAA;EAAA,SACR,GAAA,qBAAwB,GAAA,UAAa,IAAA,cAAkB,CAAA,KAAM,OAAA,CAAQ,CAAA;EAAA,SACrE,QAAA,QAAgB,OAAA;AAAA;;;AHT3B;;;;;AAIA;;cGsBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { ConfigClass, ConfiguredFeature, FeatureApp, RuntimeApp, ZeltPrebuilt } from "@zeltjs/core";
1
+ import { ConfigClass, ConfiguredFeature, ContextMode, FeatureApp, RuntimeApp, ZeltPrebuilt } from "@zeltjs/core";
2
2
 
3
3
  //#region src/global-config.lib.d.ts
4
4
  type AnyConfigClass$2 = ConfigClass<object>;
@@ -14,6 +14,7 @@ declare const getTestDefaults: () => TestDefaults;
14
14
  //#region src/on-test.d.ts
15
15
  type AnyConfigClass$1 = ConfigClass<object>;
16
16
  type OnTestOptions = {
17
+ readonly contextMode?: ContextMode;
17
18
  readonly configs?: readonly AnyConfigClass$1[];
18
19
  readonly prebuilt?: ZeltPrebuilt;
19
20
  };
@@ -44,8 +45,10 @@ type TestTargetResult<T> = {
44
45
  * @throws {ZeltLifecycleStateError}
45
46
  * @throws {ZeltInternalError}
46
47
  * @throws {ZeltReadyFailedError}
48
+ * @throws {FeatureInjectionError}
49
+ * @throws {TypeError}
47
50
  */
48
51
  declare const createTestTarget: <T extends object>(targetClass: new (...args: never[]) => T, options?: CreateTestTargetOptions) => Promise<TestTargetResult<T>>;
49
52
  //#endregion
50
53
  export { shutdownAll as a, getTestDefaults as c, createTestTarget as i, Override as n, onTest as o, TestTargetResult as r, configureTestDefaults as s, CreateTestTargetOptions as t };
51
- //# sourceMappingURL=index-CPsI5xbc.d.ts.map
54
+ //# sourceMappingURL=index-a9MoVdN2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-a9MoVdN2.d.ts","names":[],"sources":["../src/global-config.lib.ts","../src/on-test.ts","../src/shutdown-registry.lib.ts","../src/test-target.lib.ts"],"mappings":";;;KAEK,gBAAA,GAAiB,WAAA;AAAA,KAEjB,YAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,KAGxB,gBAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,cAKhB,qBAAA,GAAyB,OAAA,EAAS,gBAAA;AAAA,cAIlC,eAAA,QAAsB,YAAA;;;KCN9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,WAAA,GAAc,WAAA;EAAA,SACd,OAAA,YAAmB,gBAAA;EAAA,SACnB,QAAA,GAAW,YAAA;AAAA;AAAA,cAGT,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCdT,WAAA,QAAwB,OAAA;;;KCFhC,cAAA,GAAiB,WAAA;AAAA,KACjB,QAAA,WAAmB,IAAA;AAAA,KAEZ,QAAA;EAAA,SACD,OAAA,EAAS,QAAA,YAAoB,IAAA,cAAkB,CAAA;EAAA,SAC/C,QAAA,EAAU,CAAA;AAAA;AAAA,KAGT,uBAAA;EAAA,SACD,OAAA,YAAmB,cAAA;EAAA,SACnB,SAAA,YAAqB,QAAA;AAAA;AAAA,KAGpB,gBAAA;EAAA,SACD,MAAA,EAAQ,CAAA;EAAA,SACR,GAAA,qBAAwB,GAAA,UAAa,IAAA,cAAkB,CAAA,KAAM,OAAA,CAAQ,CAAA;EAAA,SACrE,QAAA,QAAgB,OAAA;AAAA;;;AHT3B;;;;;AAIA;;cGsBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_src = require("./src-BfVzz7qe.cjs");
2
+ const require_src = require("./src-DfDVLDkX.cjs");
3
3
  exports.configureTestDefaults = require_src.configureTestDefaults;
4
4
  exports.createTestTarget = require_src.createTestTarget;
5
5
  exports.getTestDefaults = require_src.getTestDefaults;
package/dist/index.d.cts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "./index-T6FDJjgW.cjs";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "./index-DhFNl12w.cjs";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "./index-CPsI5xbc.js";
1
+ import { a as shutdownAll, c as getTestDefaults, i as createTestTarget, n as Override, o as onTest, r as TestTargetResult, s as configureTestDefaults, t as CreateTestTargetOptions } from "./index-a9MoVdN2.js";
2
2
  export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "./src-BZDngNzF.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "./src-Cd8Vvnai.js";
2
2
  export { configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -21,6 +21,7 @@ const shutdownAll = async () => {
21
21
  const onTest = async (app, options = {}) => {
22
22
  const allConfigs = [...getTestDefaults().configs, ...options.configs ?? []];
23
23
  const readyApp = await app.createRuntime({
24
+ ...options.contextMode === void 0 ? {} : { contextMode: options.contextMode },
24
25
  configs: allConfigs,
25
26
  ...options.prebuilt === void 0 ? {} : { prebuilt: options.prebuilt }
26
27
  });
@@ -38,6 +39,8 @@ const mergeGlobalDefaults = (configs) => {
38
39
  * @throws {ZeltLifecycleStateError}
39
40
  * @throws {ZeltInternalError}
40
41
  * @throws {ZeltReadyFailedError}
42
+ * @throws {FeatureInjectionError}
43
+ * @throws {TypeError}
41
44
  */ const createTestTarget = async (targetClass, options = {}) => {
42
45
  const readyApp = await createApp([], { configs: mergeGlobalDefaults(options.configs ?? []) }).createRuntime();
43
46
  if (options.overrides?.length) override(readyApp, options.overrides);
@@ -51,4 +54,4 @@ const mergeGlobalDefaults = (configs) => {
51
54
  //#endregion
52
55
  export { getTestDefaults as a, configureTestDefaults as i, onTest as n, shutdownAll as r, createTestTarget as t };
53
56
 
54
- //# sourceMappingURL=src-BZDngNzF.js.map
57
+ //# sourceMappingURL=src-Cd8Vvnai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"src-Cd8Vvnai.js","names":["globalConfigs","configureTestDefaults","options","push","configs","getTestDefaults","shutdownFns","registerShutdown","fn","push","shutdownAll","fns","splice","getTestDefaults","registerShutdown","onTest","app","options","defaults","allConfigs","configs","readyApp","createRuntime","contextMode","undefined","prebuilt","shutdown","bind","createApp","override","getTestDefaults","registerShutdown","mergeGlobalDefaults","configs","defaults","createTestTarget","targetClass","options","mergedConfigs","app","readyApp","createRuntime","overrides","length","shutdown","bind","target","get"],"sources":["../src/global-config.lib.ts","../src/shutdown-registry.lib.ts","../src/on-test.ts","../src/test-target.lib.ts"],"sourcesContent":["import type { ConfigClass } from '@zeltjs/core';\n\ntype AnyConfigClass = ConfigClass<object>;\n\ntype TestDefaults = {\n readonly configs: readonly AnyConfigClass[];\n};\n\ntype ConfigureOptions = {\n readonly configs: readonly AnyConfigClass[];\n};\n\nconst globalConfigs: AnyConfigClass[] = [];\n\nexport const configureTestDefaults = (options: ConfigureOptions): void => {\n globalConfigs.push(...options.configs);\n};\n\nexport const getTestDefaults = (): TestDefaults => ({ configs: globalConfigs });\n","type ShutdownFn = () => Promise<void>;\n\nconst shutdownFns: ShutdownFn[] = [];\n\n/** @internal */\nexport const registerShutdown = (fn: ShutdownFn): void => {\n shutdownFns.push(fn);\n};\n\nexport const shutdownAll = async (): Promise<void> => {\n const fns = shutdownFns.splice(0);\n for (const fn of fns) {\n await fn();\n }\n};\n","import type {\n ConfigClass,\n ConfiguredFeature,\n ContextMode,\n FeatureApp,\n RuntimeApp,\n ZeltPrebuilt,\n} from '@zeltjs/core';\n\nimport { getTestDefaults } from './global-config.lib';\nimport { registerShutdown } from './shutdown-registry.lib';\n\ntype AnyConfigClass = ConfigClass<object>;\n\ntype OnTestOptions = {\n readonly contextMode?: ContextMode;\n readonly configs?: readonly AnyConfigClass[];\n readonly prebuilt?: ZeltPrebuilt;\n};\n\nexport const onTest = async <const F extends readonly ConfiguredFeature[]>(\n app: FeatureApp<F>,\n options: OnTestOptions = {},\n): Promise<RuntimeApp<F>> => {\n const defaults = getTestDefaults();\n const allConfigs = [...defaults.configs, ...(options.configs ?? [])];\n\n const readyApp = await app.createRuntime({\n ...(options.contextMode === undefined ? {} : { contextMode: options.contextMode }),\n configs: allConfigs,\n ...(options.prebuilt === undefined ? {} : { prebuilt: options.prebuilt }),\n });\n registerShutdown(readyApp.shutdown.bind(readyApp));\n\n return readyApp;\n};\n","import type { ConfigClass } from '@zeltjs/core';\nimport { createApp } from '@zeltjs/core';\nimport { override } from '@zeltjs/core/internal-bridge/testing';\n\nimport { getTestDefaults } from './global-config.lib';\nimport { registerShutdown } from './shutdown-registry.lib';\n\ntype AnyConfigClass = ConfigClass<object>;\ntype AnyClass = new (...args: never[]) => unknown;\n\nexport type Override<T = unknown> = {\n readonly provide: AnyClass & (new (...args: never[]) => T);\n readonly useValue: T;\n};\n\nexport type CreateTestTargetOptions = {\n readonly configs?: readonly AnyConfigClass[];\n readonly overrides?: readonly Override[];\n};\n\nexport type TestTargetResult<T> = {\n readonly target: T;\n readonly get: <U extends object>(cls: new (...args: never[]) => U) => Promise<U>;\n readonly shutdown: () => Promise<void>;\n};\n\nconst mergeGlobalDefaults = (configs: readonly AnyConfigClass[]): AnyConfigClass[] => {\n const defaults = getTestDefaults();\n return [...defaults.configs, ...configs];\n};\n\n/**\n * @throws {ZeltAppConfigurationError}\n * @throws {AggregateError}\n * @throws {ZeltLifecycleStateError}\n * @throws {ZeltInternalError}\n * @throws {ZeltReadyFailedError}\n * @throws {FeatureInjectionError}\n * @throws {TypeError}\n */\nexport const createTestTarget = async <T extends object>(\n targetClass: new (...args: never[]) => T,\n options: CreateTestTargetOptions = {},\n): Promise<TestTargetResult<T>> => {\n const mergedConfigs = mergeGlobalDefaults(options.configs ?? []);\n\n const app = createApp([], { configs: mergedConfigs });\n const readyApp = await app.createRuntime();\n\n if (options.overrides?.length) {\n override(readyApp, options.overrides);\n }\n\n registerShutdown(readyApp.shutdown.bind(readyApp));\n\n return {\n target: await readyApp.get(targetClass),\n get: readyApp.get,\n shutdown: readyApp.shutdown.bind(readyApp),\n };\n};\n"],"mappings":";;;AAYA,MAAMA,gBAAkC,EAAE;AAE1C,MAAaC,yBAAyBC,YAAAA;AACpCF,eAAcG,KAAI,GAAID,QAAQE,QAAO;;AAGvC,MAAaC,yBAAuC,EAAED,SAASJ,eAAc;;;AChB7E,MAAMM,cAA4B,EAAE;iBAGpC,MAAaC,oBAAoBC,OAAAA;AAC/BF,aAAYG,KAAKD,GAAAA;;AAGnB,MAAaE,cAAc,YAAA;CACzB,MAAMC,MAAML,YAAYM,OAAO,EAAA;AAC/B,MAAK,MAAMJ,MAAMG,IACf,OAAMH,IAAAA;;;;ACQV,MAAaO,SAAS,OACpBC,KACAC,UAAyB,EAAE,KAAA;CAG3B,MAAME,aAAa,CAAA,GADFN,iBACMK,CAASE,SAAAA,GAAaH,QAAQG,WAAW,EAAE,CAAE;CAEpE,MAAMC,WAAW,MAAML,IAAIM,cAAc;EACvC,GAAIL,QAAQM,gBAAgBC,KAAAA,IAAY,EAAC,GAAI,EAAED,aAAaN,QAAQM,aAAa;EACjFH,SAASD;EACT,GAAIF,QAAQQ,aAAaD,KAAAA,IAAY,EAAC,GAAI,EAAEC,UAAUR,QAAQQ,UAAU;EAC1E,CAAA;AACAX,kBAAiBO,SAASK,SAASC,KAAKN,SAAAA,CAAAA;AAExC,QAAOA;;;;ACRT,MAAMW,uBAAuBC,YAAAA;AAE3B,QAAO,CAAA,GADUH,iBACNI,CAASD,SAAAA,GAAYA,QAAQ;;;;;;;;;;GAY1C,MAAaE,mBAAmB,OAC9BC,aACAC,UAAmC,EAAE,KAAA;CAKrC,MAAMG,WAAW,MADLZ,UAAU,EAAE,EAAE,EAAEK,SAFND,oBAAoBK,QAAQJ,WAAW,EAAE,CAE1BK,EAAc,CAC5BC,CAAIE,eAAa;AAExC,KAAIJ,QAAQK,WAAWC,OACrBd,UAASW,UAAUH,QAAQK,UAAS;AAGtCX,kBAAiBS,SAASI,SAASC,KAAKL,SAAAA,CAAAA;AAExC,QAAO;EACLM,QAAQ,MAAMN,SAASO,IAAIX,YAAAA;EAC3BW,KAAKP,SAASO;EACdH,UAAUJ,SAASI,SAASC,KAAKL,SAAAA;EACnC"}
@@ -21,6 +21,7 @@ const shutdownAll = async () => {
21
21
  const onTest = async (app, options = {}) => {
22
22
  const allConfigs = [...getTestDefaults().configs, ...options.configs ?? []];
23
23
  const readyApp = await app.createRuntime({
24
+ ...options.contextMode === void 0 ? {} : { contextMode: options.contextMode },
24
25
  configs: allConfigs,
25
26
  ...options.prebuilt === void 0 ? {} : { prebuilt: options.prebuilt }
26
27
  });
@@ -38,6 +39,8 @@ const mergeGlobalDefaults = (configs) => {
38
39
  * @throws {ZeltLifecycleStateError}
39
40
  * @throws {ZeltInternalError}
40
41
  * @throws {ZeltReadyFailedError}
42
+ * @throws {FeatureInjectionError}
43
+ * @throws {TypeError}
41
44
  */ const createTestTarget = async (targetClass, options = {}) => {
42
45
  const readyApp = await (0, _zeltjs_core.createApp)([], { configs: mergeGlobalDefaults(options.configs ?? []) }).createRuntime();
43
46
  if (options.overrides?.length) (0, _zeltjs_core_internal_bridge_testing.override)(readyApp, options.overrides);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeltjs/testing",
3
- "version": "0.12.0-canary.2",
3
+ "version": "0.12.0",
4
4
  "description": "Testing utilities for Zelt applications",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -72,7 +72,7 @@
72
72
  "@jest/globals": ">=29",
73
73
  "bun-types": ">=1",
74
74
  "@types/node": ">=20",
75
- "@zeltjs/core": "0.12.0-canary.2"
75
+ "@zeltjs/core": "0.12.0"
76
76
  },
77
77
  "peerDependenciesMeta": {
78
78
  "vitest": {
@@ -99,7 +99,9 @@
99
99
  "main": "./dist/index.cjs",
100
100
  "scripts": {
101
101
  "build": "tsdown",
102
- "test": "vitest run",
103
- "typecheck": "tsc -b"
102
+ "test": "pnpm -w run test:prepare && vitest run",
103
+ "typecheck": "node ../../scripts/typecheck-project.mjs",
104
+ "lint": "node --max-old-space-size=3072 ../../node_modules/eslint/bin/eslint.js . && oxlint .",
105
+ "distribution": "node ../../scripts/pack-distribution.mjs"
104
106
  }
105
107
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-CPsI5xbc.d.ts","names":[],"sources":["../src/global-config.lib.ts","../src/on-test.ts","../src/shutdown-registry.lib.ts","../src/test-target.lib.ts"],"mappings":";;;KAEK,gBAAA,GAAiB,WAAA;AAAA,KAEjB,YAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,KAGxB,gBAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,cAKhB,qBAAA,GAAyB,OAAA,EAAS,gBAAA;AAAA,cAIlC,eAAA,QAAsB,YAAA;;;KCP9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,OAAA,YAAmB,gBAAA;EAAA,SACnB,QAAA,GAAW,YAAA;AAAA;AAAA,cAGT,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCZT,WAAA,QAAwB,OAAA;;;KCFhC,cAAA,GAAiB,WAAA;AAAA,KACjB,QAAA,WAAmB,IAAA;AAAA,KAEZ,QAAA;EAAA,SACD,OAAA,EAAS,QAAA,YAAoB,IAAA,cAAkB,CAAA;EAAA,SAC/C,QAAA,EAAU,CAAA;AAAA;AAAA,KAGT,uBAAA;EAAA,SACD,OAAA,YAAmB,cAAA;EAAA,SACnB,SAAA,YAAqB,QAAA;AAAA;AAAA,KAGpB,gBAAA;EAAA,SACD,MAAA,EAAQ,CAAA;EAAA,SACR,GAAA,qBAAwB,GAAA,UAAa,IAAA,cAAkB,CAAA,KAAM,OAAA,CAAQ,CAAA;EAAA,SACrE,QAAA,QAAgB,OAAA;AAAA;;;AHT3B;;;;;cGwBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-T6FDJjgW.d.cts","names":[],"sources":["../src/global-config.lib.ts","../src/on-test.ts","../src/shutdown-registry.lib.ts","../src/test-target.lib.ts"],"mappings":";;;KAEK,gBAAA,GAAiB,WAAA;AAAA,KAEjB,YAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,KAGxB,gBAAA;EAAA,SACM,OAAA,WAAkB,gBAAA;AAAA;AAAA,cAKhB,qBAAA,GAAyB,OAAA,EAAS,gBAAA;AAAA,cAIlC,eAAA,QAAsB,YAAA;;;KCP9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,OAAA,YAAmB,gBAAA;EAAA,SACnB,QAAA,GAAW,YAAA;AAAA;AAAA,cAGT,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCZT,WAAA,QAAwB,OAAA;;;KCFhC,cAAA,GAAiB,WAAA;AAAA,KACjB,QAAA,WAAmB,IAAA;AAAA,KAEZ,QAAA;EAAA,SACD,OAAA,EAAS,QAAA,YAAoB,IAAA,cAAkB,CAAA;EAAA,SAC/C,QAAA,EAAU,CAAA;AAAA;AAAA,KAGT,uBAAA;EAAA,SACD,OAAA,YAAmB,cAAA;EAAA,SACnB,SAAA,YAAqB,QAAA;AAAA;AAAA,KAGpB,gBAAA;EAAA,SACD,MAAA,EAAQ,CAAA;EAAA,SACR,GAAA,qBAAwB,GAAA,UAAa,IAAA,cAAkB,CAAA,KAAM,OAAA,CAAQ,CAAA;EAAA,SACrE,QAAA,QAAgB,OAAA;AAAA;;;AHT3B;;;;;cGwBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"src-BZDngNzF.js","names":["globalConfigs","configureTestDefaults","options","push","configs","getTestDefaults","shutdownFns","registerShutdown","fn","push","shutdownAll","fns","splice","getTestDefaults","registerShutdown","onTest","app","options","defaults","allConfigs","configs","readyApp","createRuntime","prebuilt","undefined","shutdown","bind","createApp","override","getTestDefaults","registerShutdown","mergeGlobalDefaults","configs","defaults","createTestTarget","targetClass","options","mergedConfigs","app","readyApp","createRuntime","overrides","length","shutdown","bind","target","get"],"sources":["../src/global-config.lib.ts","../src/shutdown-registry.lib.ts","../src/on-test.ts","../src/test-target.lib.ts"],"sourcesContent":["import type { ConfigClass } from '@zeltjs/core';\n\ntype AnyConfigClass = ConfigClass<object>;\n\ntype TestDefaults = {\n readonly configs: readonly AnyConfigClass[];\n};\n\ntype ConfigureOptions = {\n readonly configs: readonly AnyConfigClass[];\n};\n\nconst globalConfigs: AnyConfigClass[] = [];\n\nexport const configureTestDefaults = (options: ConfigureOptions): void => {\n globalConfigs.push(...options.configs);\n};\n\nexport const getTestDefaults = (): TestDefaults => ({ configs: globalConfigs });\n","type ShutdownFn = () => Promise<void>;\n\nconst shutdownFns: ShutdownFn[] = [];\n\n/** @internal */\nexport const registerShutdown = (fn: ShutdownFn): void => {\n shutdownFns.push(fn);\n};\n\nexport const shutdownAll = async (): Promise<void> => {\n const fns = shutdownFns.splice(0);\n for (const fn of fns) {\n await fn();\n }\n};\n","import type {\n ConfigClass,\n ConfiguredFeature,\n FeatureApp,\n RuntimeApp,\n ZeltPrebuilt,\n} from '@zeltjs/core';\n\nimport { getTestDefaults } from './global-config.lib';\nimport { registerShutdown } from './shutdown-registry.lib';\n\ntype AnyConfigClass = ConfigClass<object>;\n\ntype OnTestOptions = {\n readonly configs?: readonly AnyConfigClass[];\n readonly prebuilt?: ZeltPrebuilt;\n};\n\nexport const onTest = async <const F extends readonly ConfiguredFeature[]>(\n app: FeatureApp<F>,\n options: OnTestOptions = {},\n): Promise<RuntimeApp<F>> => {\n const defaults = getTestDefaults();\n const allConfigs = [...defaults.configs, ...(options.configs ?? [])];\n\n const readyApp = await app.createRuntime({\n configs: allConfigs,\n ...(options.prebuilt === undefined ? {} : { prebuilt: options.prebuilt }),\n });\n registerShutdown(readyApp.shutdown.bind(readyApp));\n\n return readyApp;\n};\n","import type { ConfigClass } from '@zeltjs/core';\nimport { createApp } from '@zeltjs/core';\nimport { override } from '@zeltjs/core/internal-bridge/testing';\n\nimport { getTestDefaults } from './global-config.lib';\nimport { registerShutdown } from './shutdown-registry.lib';\n\ntype AnyConfigClass = ConfigClass<object>;\ntype AnyClass = new (...args: never[]) => unknown;\n\nexport type Override<T = unknown> = {\n readonly provide: AnyClass & (new (...args: never[]) => T);\n readonly useValue: T;\n};\n\nexport type CreateTestTargetOptions = {\n readonly configs?: readonly AnyConfigClass[];\n readonly overrides?: readonly Override[];\n};\n\nexport type TestTargetResult<T> = {\n readonly target: T;\n readonly get: <U extends object>(cls: new (...args: never[]) => U) => Promise<U>;\n readonly shutdown: () => Promise<void>;\n};\n\nconst mergeGlobalDefaults = (configs: readonly AnyConfigClass[]): AnyConfigClass[] => {\n const defaults = getTestDefaults();\n return [...defaults.configs, ...configs];\n};\n\n/**\n * @throws {ZeltAppConfigurationError}\n * @throws {AggregateError}\n * @throws {ZeltLifecycleStateError}\n * @throws {ZeltInternalError}\n * @throws {ZeltReadyFailedError}\n */\nexport const createTestTarget = async <T extends object>(\n targetClass: new (...args: never[]) => T,\n options: CreateTestTargetOptions = {},\n): Promise<TestTargetResult<T>> => {\n const mergedConfigs = mergeGlobalDefaults(options.configs ?? []);\n\n const app = createApp([], { configs: mergedConfigs });\n const readyApp = await app.createRuntime();\n\n if (options.overrides?.length) {\n override(readyApp, options.overrides);\n }\n\n registerShutdown(readyApp.shutdown.bind(readyApp));\n\n return {\n target: await readyApp.get(targetClass),\n get: readyApp.get,\n shutdown: readyApp.shutdown.bind(readyApp),\n };\n};\n"],"mappings":";;;AAYA,MAAMA,gBAAkC,EAAE;AAE1C,MAAaC,yBAAyBC,YAAAA;AACpCF,eAAcG,KAAI,GAAID,QAAQE,QAAO;;AAGvC,MAAaC,yBAAuC,EAAED,SAASJ,eAAc;;;AChB7E,MAAMM,cAA4B,EAAE;iBAGpC,MAAaC,oBAAoBC,OAAAA;AAC/BF,aAAYG,KAAKD,GAAAA;;AAGnB,MAAaE,cAAc,YAAA;CACzB,MAAMC,MAAML,YAAYM,OAAO,EAAA;AAC/B,MAAK,MAAMJ,MAAMG,IACf,OAAMH,IAAAA;;;;ACMV,MAAaO,SAAS,OACpBC,KACAC,UAAyB,EAAE,KAAA;CAG3B,MAAME,aAAa,CAAA,GADFN,iBACMK,CAASE,SAAAA,GAAaH,QAAQG,WAAW,EAAE,CAAE;CAEpE,MAAMC,WAAW,MAAML,IAAIM,cAAc;EACvCF,SAASD;EACT,GAAIF,QAAQM,aAAaC,KAAAA,IAAY,EAAC,GAAI,EAAED,UAAUN,QAAQM,UAAU;EAC1E,CAAA;AACAT,kBAAiBO,SAASI,SAASC,KAAKL,SAAAA,CAAAA;AAExC,QAAOA;;;;ACLT,MAAMU,uBAAuBC,YAAAA;AAE3B,QAAO,CAAA,GADUH,iBACNI,CAASD,SAAAA,GAAYA,QAAQ;;;;;;;;GAU1C,MAAaE,mBAAmB,OAC9BC,aACAC,UAAmC,EAAE,KAAA;CAKrC,MAAMG,WAAW,MADLZ,UAAU,EAAE,EAAE,EAAEK,SAFND,oBAAoBK,QAAQJ,WAAW,EAAE,CAE1BK,EAAc,CAC5BC,CAAIE,eAAa;AAExC,KAAIJ,QAAQK,WAAWC,OACrBd,UAASW,UAAUH,QAAQK,UAAS;AAGtCX,kBAAiBS,SAASI,SAASC,KAAKL,SAAAA,CAAAA;AAExC,QAAO;EACLM,QAAQ,MAAMN,SAASO,IAAIX,YAAAA;EAC3BW,KAAKP,SAASO;EACdH,UAAUJ,SAASI,SAASC,KAAKL,SAAAA;EACnC"}