@zeltjs/testing 0.8.1 → 0.8.2-canary.1

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.
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-DhtH47aT.cjs");
3
+ //#region src/adapters/bun.ts
4
+ (0, require("bun:test").afterAll)(require_src.shutdownAll);
5
+ //#endregion
6
+ exports.configureTestDefaults = require_src.configureTestDefaults;
7
+ exports.createTestTarget = require_src.createTestTarget;
8
+ exports.getTestDefaults = require_src.getTestDefaults;
9
+ exports.onTest = require_src.onTest;
10
+ exports.shutdownAll = require_src.shutdownAll;
@@ -0,0 +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-C5GZp-QX.cjs";
2
+ export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as configureTestDefaults, i as createTestTarget, l as getTestDefaults, n as Override, o as TestableApp, r as TestTargetResult, s as onTest, t as CreateTestTargetOptions } from "../index-By4nVlN4.js";
2
- export { CreateTestTargetOptions, Override, TestTargetResult, TestableApp, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
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-CreuQozD.js";
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-B8Nu4oMy.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-De04fHnG.js";
2
2
  import { afterAll } from "bun:test";
3
3
  //#region src/adapters/bun.ts
4
4
  afterAll(shutdownAll);
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-DhtH47aT.cjs");
3
+ //#region src/adapters/jest.ts
4
+ (0, require("@jest/globals").afterAll)(require_src.shutdownAll);
5
+ //#endregion
6
+ exports.configureTestDefaults = require_src.configureTestDefaults;
7
+ exports.createTestTarget = require_src.createTestTarget;
8
+ exports.getTestDefaults = require_src.getTestDefaults;
9
+ exports.onTest = require_src.onTest;
10
+ exports.shutdownAll = require_src.shutdownAll;
@@ -0,0 +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-C5GZp-QX.cjs";
2
+ export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as configureTestDefaults, i as createTestTarget, l as getTestDefaults, n as Override, o as TestableApp, r as TestTargetResult, s as onTest, t as CreateTestTargetOptions } from "../index-By4nVlN4.js";
2
- export { CreateTestTargetOptions, Override, TestTargetResult, TestableApp, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
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-CreuQozD.js";
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-B8Nu4oMy.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-De04fHnG.js";
2
2
  import { afterAll } from "@jest/globals";
3
3
  //#region src/adapters/jest.ts
4
4
  afterAll(shutdownAll);
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-DhtH47aT.cjs");
3
+ //#region src/adapters/node.ts
4
+ (0, require("node:test").after)(require_src.shutdownAll);
5
+ //#endregion
6
+ exports.configureTestDefaults = require_src.configureTestDefaults;
7
+ exports.createTestTarget = require_src.createTestTarget;
8
+ exports.getTestDefaults = require_src.getTestDefaults;
9
+ exports.onTest = require_src.onTest;
10
+ exports.shutdownAll = require_src.shutdownAll;
@@ -0,0 +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-C5GZp-QX.cjs";
2
+ export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as configureTestDefaults, i as createTestTarget, l as getTestDefaults, n as Override, o as TestableApp, r as TestTargetResult, s as onTest, t as CreateTestTargetOptions } from "../index-By4nVlN4.js";
2
- export { CreateTestTargetOptions, Override, TestTargetResult, TestableApp, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
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-CreuQozD.js";
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-B8Nu4oMy.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-De04fHnG.js";
2
2
  import { after } from "node:test";
3
3
  //#region src/adapters/node.ts
4
4
  after(shutdownAll);
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-DhtH47aT.cjs");
3
+ //#region src/adapters/vitest.ts
4
+ (0, require("vitest").afterAll)(require_src.shutdownAll);
5
+ //#endregion
6
+ exports.configureTestDefaults = require_src.configureTestDefaults;
7
+ exports.createTestTarget = require_src.createTestTarget;
8
+ exports.getTestDefaults = require_src.getTestDefaults;
9
+ exports.onTest = require_src.onTest;
10
+ exports.shutdownAll = require_src.shutdownAll;
@@ -0,0 +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-C5GZp-QX.cjs";
2
+ export { CreateTestTargetOptions, Override, TestTargetResult, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -1,2 +1,2 @@
1
- import { a as shutdownAll, c as configureTestDefaults, i as createTestTarget, l as getTestDefaults, n as Override, o as TestableApp, r as TestTargetResult, s as onTest, t as CreateTestTargetOptions } from "../index-By4nVlN4.js";
2
- export { CreateTestTargetOptions, Override, TestTargetResult, TestableApp, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
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-CreuQozD.js";
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-B8Nu4oMy.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "../src-De04fHnG.js";
2
2
  import { afterAll } from "vitest";
3
3
  //#region src/adapters/vitest.ts
4
4
  afterAll(shutdownAll);
@@ -0,0 +1,49 @@
1
+ import { ConfigClass, ConfiguredFeature, FeatureApp, RuntimeApp } from "@zeltjs/core";
2
+
3
+ //#region src/global-config.lib.d.ts
4
+ type AnyConfigClass$2 = ConfigClass<object>;
5
+ type TestDefaults = {
6
+ readonly configs: readonly AnyConfigClass$2[];
7
+ };
8
+ type ConfigureOptions = {
9
+ readonly configs: readonly AnyConfigClass$2[];
10
+ };
11
+ declare const configureTestDefaults: (options: ConfigureOptions) => void;
12
+ declare const getTestDefaults: () => TestDefaults;
13
+ //#endregion
14
+ //#region src/on-test.d.ts
15
+ type AnyConfigClass$1 = ConfigClass<object>;
16
+ type OnTestOptions = {
17
+ readonly configs?: readonly AnyConfigClass$1[];
18
+ };
19
+ declare const onTest: <const F extends readonly ConfiguredFeature[]>(app: FeatureApp<F>, options?: OnTestOptions) => Promise<RuntimeApp<F>>;
20
+ //#endregion
21
+ //#region src/shutdown-registry.lib.d.ts
22
+ declare const shutdownAll: () => Promise<void>;
23
+ //#endregion
24
+ //#region src/test-target.lib.d.ts
25
+ type AnyConfigClass = ConfigClass<object>;
26
+ type AnyClass = new (...args: never[]) => unknown;
27
+ type Override<T = unknown> = {
28
+ readonly provide: AnyClass & (new (...args: never[]) => T);
29
+ readonly useValue: T;
30
+ };
31
+ type CreateTestTargetOptions = {
32
+ readonly configs?: readonly AnyConfigClass[];
33
+ readonly overrides?: readonly Override[];
34
+ };
35
+ type TestTargetResult<T> = {
36
+ readonly target: T;
37
+ readonly get: <U extends object>(cls: new (...args: never[]) => U) => Promise<U>;
38
+ readonly shutdown: () => Promise<void>;
39
+ };
40
+ /**
41
+ * @throws {ZeltAppConfigurationError}
42
+ * @throws {ZeltLifecycleStateError}
43
+ * @throws {ZeltInternalError}
44
+ * @throws {ZeltReadyFailedError}
45
+ */
46
+ declare const createTestTarget: <T extends object>(targetClass: new (...args: never[]) => T, options?: CreateTestTargetOptions) => Promise<TestTargetResult<T>>;
47
+ //#endregion
48
+ 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 };
49
+ //# sourceMappingURL=index-C5GZp-QX.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-C5GZp-QX.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;;;KCb9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,OAAA,YAAmB,gBAAA;AAAA;AAAA,cAGjB,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCNT,WAAA,QAAwB,OAAA;;;KCDhC,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;;;;cGuBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { App, ConfigClass, ReadyResult } from "@zeltjs/core";
1
+ import { ConfigClass, ConfiguredFeature, FeatureApp, RuntimeApp } from "@zeltjs/core";
2
2
 
3
3
  //#region src/global-config.lib.d.ts
4
4
  type AnyConfigClass$2 = ConfigClass<object>;
@@ -16,8 +16,7 @@ type AnyConfigClass$1 = ConfigClass<object>;
16
16
  type OnTestOptions = {
17
17
  readonly configs?: readonly AnyConfigClass$1[];
18
18
  };
19
- type TestableApp<T extends App> = T & Pick<ReadyResult, 'get'>;
20
- declare const onTest: <T extends App>(app: T, options?: OnTestOptions) => Promise<TestableApp<T>>;
19
+ declare const onTest: <const F extends readonly ConfiguredFeature[]>(app: FeatureApp<F>, options?: OnTestOptions) => Promise<RuntimeApp<F>>;
21
20
  //#endregion
22
21
  //#region src/shutdown-registry.lib.d.ts
23
22
  declare const shutdownAll: () => Promise<void>;
@@ -35,14 +34,16 @@ type CreateTestTargetOptions = {
35
34
  };
36
35
  type TestTargetResult<T> = {
37
36
  readonly target: T;
38
- readonly get: <U extends object>(cls: new (...args: never[]) => U) => U;
37
+ readonly get: <U extends object>(cls: new (...args: never[]) => U) => Promise<U>;
39
38
  readonly shutdown: () => Promise<void>;
40
39
  };
41
40
  /**
41
+ * @throws {ZeltAppConfigurationError}
42
42
  * @throws {ZeltLifecycleStateError}
43
43
  * @throws {ZeltInternalError}
44
+ * @throws {ZeltReadyFailedError}
44
45
  */
45
46
  declare const createTestTarget: <T extends object>(targetClass: new (...args: never[]) => T, options?: CreateTestTargetOptions) => Promise<TestTargetResult<T>>;
46
47
  //#endregion
47
- export { shutdownAll as a, configureTestDefaults as c, createTestTarget as i, getTestDefaults as l, Override as n, TestableApp as o, TestTargetResult as r, onTest as s, CreateTestTargetOptions as t };
48
- //# sourceMappingURL=index-By4nVlN4.d.ts.map
48
+ 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 };
49
+ //# sourceMappingURL=index-CreuQozD.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CreuQozD.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;;;KCb9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,OAAA,YAAmB,gBAAA;AAAA;AAAA,cAGjB,MAAA,4BAAyC,iBAAA,IACpD,GAAA,EAAK,UAAA,CAAW,CAAA,GAChB,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,UAAA,CAAW,CAAA;;;cCNT,WAAA,QAAwB,OAAA;;;KCDhC,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;;;;cGuBa,gBAAA,qBACX,WAAA,UAAqB,IAAA,cAAkB,CAAA,EACvC,OAAA,GAAS,uBAAA,KACR,OAAA,CAAQ,gBAAA,CAAiB,CAAA"}
package/dist/index.cjs ADDED
@@ -0,0 +1,7 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("./src-DhtH47aT.cjs");
3
+ exports.configureTestDefaults = require_src.configureTestDefaults;
4
+ exports.createTestTarget = require_src.createTestTarget;
5
+ exports.getTestDefaults = require_src.getTestDefaults;
6
+ exports.onTest = require_src.onTest;
7
+ exports.shutdownAll = require_src.shutdownAll;
@@ -0,0 +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-C5GZp-QX.cjs";
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 configureTestDefaults, i as createTestTarget, l as getTestDefaults, n as Override, o as TestableApp, r as TestTargetResult, s as onTest, t as CreateTestTargetOptions } from "./index-By4nVlN4.js";
2
- export { CreateTestTargetOptions, Override, TestTargetResult, TestableApp, configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
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-CreuQozD.js";
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-B8Nu4oMy.js";
1
+ import { a as getTestDefaults, i as configureTestDefaults, n as onTest, r as shutdownAll, t as createTestTarget } from "./src-De04fHnG.js";
2
2
  export { configureTestDefaults, createTestTarget, getTestDefaults, onTest, shutdownAll };
@@ -18,18 +18,11 @@ const shutdownAll = async () => {
18
18
  };
19
19
  //#endregion
20
20
  //#region src/on-test.ts
21
- const applyOverrides = (app, configs) => {
22
- for (const configClass of configs) app.overrideConfig(configClass);
23
- };
24
21
  const onTest = async (app, options = {}) => {
25
- applyOverrides(app, getTestDefaults().configs);
26
- applyOverrides(app, options.configs ?? []);
27
- const { get } = await app.ready();
28
- registerShutdown(app.shutdown.bind(app));
29
- return {
30
- ...app,
31
- get
32
- };
22
+ const allConfigs = [...getTestDefaults().configs, ...options.configs ?? []];
23
+ const readyApp = await app.createRuntime({ configs: allConfigs });
24
+ registerShutdown(readyApp.shutdown.bind(readyApp));
25
+ return readyApp;
33
26
  };
34
27
  //#endregion
35
28
  //#region src/test-target.lib.ts
@@ -37,20 +30,21 @@ const mergeGlobalDefaults = (configs) => {
37
30
  return [...getTestDefaults().configs, ...configs];
38
31
  };
39
32
  /**
33
+ * @throws {ZeltAppConfigurationError}
40
34
  * @throws {ZeltLifecycleStateError}
41
35
  * @throws {ZeltInternalError}
36
+ * @throws {ZeltReadyFailedError}
42
37
  */ const createTestTarget = async (targetClass, options = {}) => {
43
- const app = createApp({ configs: mergeGlobalDefaults(options.configs ?? []) });
44
- if (options.overrides?.length) override(app, options.overrides);
45
- const { get } = await app.ready();
46
- registerShutdown(app.shutdown.bind(app));
38
+ const readyApp = await createApp([], { configs: mergeGlobalDefaults(options.configs ?? []) }).createRuntime();
39
+ if (options.overrides?.length) override(readyApp, options.overrides);
40
+ registerShutdown(readyApp.shutdown.bind(readyApp));
47
41
  return {
48
- target: get(targetClass),
49
- get,
50
- shutdown: app.shutdown.bind(app)
42
+ target: await readyApp.get(targetClass),
43
+ get: readyApp.get,
44
+ shutdown: readyApp.shutdown.bind(readyApp)
51
45
  };
52
46
  };
53
47
  //#endregion
54
48
  export { getTestDefaults as a, configureTestDefaults as i, onTest as n, shutdownAll as r, createTestTarget as t };
55
49
 
56
- //# sourceMappingURL=src-B8Nu4oMy.js.map
50
+ //# sourceMappingURL=src-De04fHnG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"src-De04fHnG.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","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\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 { ConfigClass, ConfiguredFeature, FeatureApp, RuntimeApp } 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};\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({ configs: allConfigs });\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 {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;AAEpC,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;;;;ACAV,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,EAAEF,SAASD,YAAW,CAAA;AAC/DL,kBAAiBO,SAASE,SAASC,KAAKH,SAAAA,CAAAA;AAExC,QAAOA;;;;ACKT,MAAMQ,uBAAuBC,YAAAA;AAE3B,QAAO,CAAA,GADUH,iBACNI,CAASD,SAAAA,GAAYA,QAAQ;;;;;;;GAS1C,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"}
@@ -0,0 +1,77 @@
1
+ let _zeltjs_core = require("@zeltjs/core");
2
+ let _zeltjs_core_internal_bridge_testing = require("@zeltjs/core/internal-bridge/testing");
3
+ //#region src/global-config.lib.ts
4
+ const globalConfigs = [];
5
+ const configureTestDefaults = (options) => {
6
+ globalConfigs.push(...options.configs);
7
+ };
8
+ const getTestDefaults = () => ({ configs: globalConfigs });
9
+ //#endregion
10
+ //#region src/shutdown-registry.lib.ts
11
+ const shutdownFns = [];
12
+ const registerShutdown = (fn) => {
13
+ shutdownFns.push(fn);
14
+ };
15
+ const shutdownAll = async () => {
16
+ const fns = shutdownFns.splice(0);
17
+ for (const fn of fns) await fn();
18
+ };
19
+ //#endregion
20
+ //#region src/on-test.ts
21
+ const onTest = async (app, options = {}) => {
22
+ const allConfigs = [...getTestDefaults().configs, ...options.configs ?? []];
23
+ const readyApp = await app.createRuntime({ configs: allConfigs });
24
+ registerShutdown(readyApp.shutdown.bind(readyApp));
25
+ return readyApp;
26
+ };
27
+ //#endregion
28
+ //#region src/test-target.lib.ts
29
+ const mergeGlobalDefaults = (configs) => {
30
+ return [...getTestDefaults().configs, ...configs];
31
+ };
32
+ /**
33
+ * @throws {ZeltAppConfigurationError}
34
+ * @throws {ZeltLifecycleStateError}
35
+ * @throws {ZeltInternalError}
36
+ * @throws {ZeltReadyFailedError}
37
+ */ const createTestTarget = async (targetClass, options = {}) => {
38
+ const readyApp = await (0, _zeltjs_core.createApp)([], { configs: mergeGlobalDefaults(options.configs ?? []) }).createRuntime();
39
+ if (options.overrides?.length) (0, _zeltjs_core_internal_bridge_testing.override)(readyApp, options.overrides);
40
+ registerShutdown(readyApp.shutdown.bind(readyApp));
41
+ return {
42
+ target: await readyApp.get(targetClass),
43
+ get: readyApp.get,
44
+ shutdown: readyApp.shutdown.bind(readyApp)
45
+ };
46
+ };
47
+ //#endregion
48
+ Object.defineProperty(exports, "configureTestDefaults", {
49
+ enumerable: true,
50
+ get: function() {
51
+ return configureTestDefaults;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "createTestTarget", {
55
+ enumerable: true,
56
+ get: function() {
57
+ return createTestTarget;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "getTestDefaults", {
61
+ enumerable: true,
62
+ get: function() {
63
+ return getTestDefaults;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "onTest", {
67
+ enumerable: true,
68
+ get: function() {
69
+ return onTest;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "shutdownAll", {
73
+ enumerable: true,
74
+ get: function() {
75
+ return shutdownAll;
76
+ }
77
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeltjs/testing",
3
- "version": "0.8.1",
3
+ "version": "0.8.2-canary.1",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -13,24 +13,54 @@
13
13
  },
14
14
  "exports": {
15
15
  ".": {
16
- "types": "./dist/index.d.ts",
17
- "import": "./dist/index.js"
16
+ "import": {
17
+ "types": "./dist/index.d.ts",
18
+ "default": "./dist/index.js"
19
+ },
20
+ "require": {
21
+ "types": "./dist/index.d.cts",
22
+ "default": "./dist/index.cjs"
23
+ }
18
24
  },
19
25
  "./vitest": {
20
- "types": "./dist/adapters/vitest.d.ts",
21
- "import": "./dist/adapters/vitest.js"
26
+ "import": {
27
+ "types": "./dist/adapters/vitest.d.ts",
28
+ "default": "./dist/adapters/vitest.js"
29
+ },
30
+ "require": {
31
+ "types": "./dist/adapters/vitest.d.cts",
32
+ "default": "./dist/adapters/vitest.cjs"
33
+ }
22
34
  },
23
35
  "./jest": {
24
- "types": "./dist/adapters/jest.d.ts",
25
- "import": "./dist/adapters/jest.js"
36
+ "import": {
37
+ "types": "./dist/adapters/jest.d.ts",
38
+ "default": "./dist/adapters/jest.js"
39
+ },
40
+ "require": {
41
+ "types": "./dist/adapters/jest.d.cts",
42
+ "default": "./dist/adapters/jest.cjs"
43
+ }
26
44
  },
27
45
  "./bun": {
28
- "types": "./dist/adapters/bun.d.ts",
29
- "import": "./dist/adapters/bun.js"
46
+ "import": {
47
+ "types": "./dist/adapters/bun.d.ts",
48
+ "default": "./dist/adapters/bun.js"
49
+ },
50
+ "require": {
51
+ "types": "./dist/adapters/bun.d.cts",
52
+ "default": "./dist/adapters/bun.cjs"
53
+ }
30
54
  },
31
55
  "./node": {
32
- "types": "./dist/adapters/node.d.ts",
33
- "import": "./dist/adapters/node.js"
56
+ "import": {
57
+ "types": "./dist/adapters/node.d.ts",
58
+ "default": "./dist/adapters/node.js"
59
+ },
60
+ "require": {
61
+ "types": "./dist/adapters/node.d.cts",
62
+ "default": "./dist/adapters/node.cjs"
63
+ }
34
64
  }
35
65
  },
36
66
  "files": [
@@ -41,7 +71,7 @@
41
71
  "@jest/globals": ">=29",
42
72
  "bun-types": ">=1",
43
73
  "@types/node": ">=20",
44
- "@zeltjs/core": "0.8.1"
74
+ "@zeltjs/core": "0.8.2-canary.1"
45
75
  },
46
76
  "peerDependenciesMeta": {
47
77
  "vitest": {
@@ -65,6 +95,7 @@
65
95
  "volta": {
66
96
  "extends": "../../package.json"
67
97
  },
98
+ "main": "./dist/index.cjs",
68
99
  "scripts": {
69
100
  "build": "tsdown",
70
101
  "test": "vitest run",
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-By4nVlN4.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;;;KCb9B,gBAAA,GAAiB,WAAA;AAAA,KAEjB,aAAA;EAAA,SACM,OAAA,YAAmB,gBAAA;AAAA;AAAA,KAGlB,WAAA,WAAsB,GAAA,IAAO,CAAA,GAAI,IAAA,CAAK,WAAA;AAAA,cAQrC,MAAA,aAA0B,GAAA,EACrC,GAAA,EAAK,CAAA,EACL,OAAA,GAAS,aAAA,KACR,OAAA,CAAQ,WAAA,CAAY,CAAA;;;cCdV,WAAA,QAAwB,OAAA;;;KCDhC,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,CAAA;EAAA,SAC7D,QAAA,QAAgB,OAAA;AAAA;;;AHT3B;;cGqBa,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-B8Nu4oMy.js","names":["globalConfigs","configureTestDefaults","options","push","configs","getTestDefaults","shutdownFns","registerShutdown","fn","push","shutdownAll","fns","splice","getTestDefaults","registerShutdown","applyOverrides","app","configs","configClass","overrideConfig","onTest","options","defaults","get","ready","shutdown","bind","createApp","override","getTestDefaults","registerShutdown","mergeGlobalDefaults","configs","defaults","createTestTarget","targetClass","options","mergedConfigs","app","overrides","length","get","ready","shutdown","bind","target"],"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\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 { App, ConfigClass, ReadyResult } 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};\n\nexport type TestableApp<T extends App> = T & Pick<ReadyResult, 'get'>;\n\nconst applyOverrides = (app: App, configs: readonly AnyConfigClass[]): void => {\n for (const configClass of configs) {\n app.overrideConfig(configClass);\n }\n};\n\nexport const onTest = async <T extends App>(\n app: T,\n options: OnTestOptions = {},\n): Promise<TestableApp<T>> => {\n const defaults = getTestDefaults();\n applyOverrides(app, defaults.configs);\n applyOverrides(app, options.configs ?? []);\n\n const { get } = await app.ready();\n registerShutdown(app.shutdown.bind(app));\n\n return { ...app, get };\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) => 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 {ZeltLifecycleStateError}\n * @throws {ZeltInternalError}\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\n if (options.overrides?.length) {\n override(app, options.overrides);\n }\n\n const { get } = await app.ready();\n registerShutdown(app.shutdown.bind(app));\n\n return {\n target: get(targetClass),\n get,\n shutdown: app.shutdown.bind(app),\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;AAEpC,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;;;;ACEV,MAAMO,kBAAkBC,KAAUC,YAAAA;AAChC,MAAK,MAAMC,eAAeD,QACxBD,KAAIG,eAAeD,YAAAA;;AAIvB,MAAaE,SAAS,OACpBJ,KACAK,UAAyB,EAAE,KAAA;AAG3BN,gBAAeC,KADEH,iBACGS,CAASL,QAAO;AACpCF,gBAAeC,KAAKK,QAAQJ,WAAW,EAAE,CAAA;CAEzC,MAAM,EAAEM,QAAQ,MAAMP,IAAIQ,OAAK;AAC/BV,kBAAiBE,IAAIS,SAASC,KAAKV,IAAAA,CAAAA;AAEnC,QAAO;EAAE,GAAGA;EAAKO;EAAI;;;;ACJvB,MAAMQ,uBAAuBC,YAAAA;AAE3B,QAAO,CAAA,GADUH,iBACNI,CAASD,SAAAA,GAAYA,QAAQ;;;;;GAO1C,MAAaE,mBAAmB,OAC9BC,aACAC,UAAmC,EAAE,KAAA;CAIrC,MAAME,MAAMX,UAAU,EAAEK,SAFFD,oBAAoBK,QAAQJ,WAAW,EAAE,CAE9BK,EAAc,CAAA;AAE/C,KAAID,QAAQG,WAAWC,OACrBZ,UAASU,KAAKF,QAAQG,UAAS;CAGjC,MAAM,EAAEE,QAAQ,MAAMH,IAAII,OAAK;AAC/BZ,kBAAiBQ,IAAIK,SAASC,KAAKN,IAAAA,CAAAA;AAEnC,QAAO;EACLO,QAAQJ,IAAIN,YAAAA;EACZM;EACAE,UAAUL,IAAIK,SAASC,KAAKN,IAAAA;EAC9B"}