@c9up/helix 0.2.3 → 0.2.4
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 +25 -111
- package/bin/helix.js +24 -41
- package/dist/cli/failed-cache.d.ts +2 -2
- package/dist/cli/failed-cache.js +2 -2
- package/dist/cli/pool.d.ts +3 -3
- package/dist/cli/reporter.d.ts +1 -1
- package/dist/cli/reporter.js +2 -2
- package/dist/cli/run.d.ts +5 -5
- package/dist/cli/run.js +4 -4
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/runner.d.ts +1 -1
- package/dist/cli/runner.js +1 -1
- package/dist/cli/suites.d.ts +4 -4
- package/dist/cli/suites.d.ts.map +1 -1
- package/dist/cli/suites.js +4 -4
- package/dist/cli/suites.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/native/generated.d.ts +2 -2
- package/dist/native/generated.d.ts.map +1 -1
- package/dist/runtime/assert.d.ts +18 -18
- package/dist/runtime/assert.d.ts.map +1 -1
- package/dist/runtime/assert.js +3 -3
- package/dist/runtime/assert.js.map +1 -1
- package/dist/runtime/bootstrap.d.ts +2 -2
- package/dist/runtime/bootstrap.js +3 -3
- package/dist/runtime/bootstrap.js.map +1 -1
- package/dist/runtime/cli-args.d.ts +6 -6
- package/dist/runtime/cli-args.d.ts.map +1 -1
- package/dist/runtime/cli-args.js +5 -5
- package/dist/runtime/cli-args.js.map +1 -1
- package/dist/runtime/configure.d.ts +43 -43
- package/dist/runtime/configure.d.ts.map +1 -1
- package/dist/runtime/configure.js +11 -11
- package/dist/runtime/configure.js.map +1 -1
- package/dist/runtime/context.d.ts +9 -9
- package/dist/runtime/context.d.ts.map +1 -1
- package/dist/runtime/context.js +10 -10
- package/dist/runtime/context.js.map +1 -1
- package/dist/runtime/emitter.d.ts +13 -13
- package/dist/runtime/emitter.d.ts.map +1 -1
- package/dist/runtime/emitter.js +6 -6
- package/dist/runtime/global-hooks.d.ts +1 -1
- package/dist/runtime/global-hooks.js +1 -1
- package/dist/runtime/run.d.ts +13 -13
- package/dist/runtime/run.d.ts.map +1 -1
- package/dist/runtime/run.js +47 -47
- package/dist/runtime/run.js.map +1 -1
- package/dist/runtime/runner.d.ts +12 -12
- package/dist/runtime/runner.d.ts.map +1 -1
- package/dist/runtime/runner.js +10 -10
- package/dist/runtime/runner.js.map +1 -1
- package/dist/runtime/suite-config.d.ts +1 -1
- package/dist/runtime/suite-config.js +1 -1
- package/dist/runtime/suite-taps.d.ts +17 -17
- package/dist/runtime/suite-taps.d.ts.map +1 -1
- package/dist/runtime/suite-taps.js +7 -7
- package/dist/runtime/suite-taps.js.map +1 -1
- package/dist/runtime/suite.d.ts +43 -43
- package/dist/runtime/suite.d.ts.map +1 -1
- package/dist/runtime/suite.js +14 -14
- package/dist/runtime/suite.js.map +1 -1
- package/dist/runtime/test-context.d.ts +8 -8
- package/dist/runtime/test-context.d.ts.map +1 -1
- package/dist/runtime/test-context.js +5 -5
- package/dist/runtime/test-context.js.map +1 -1
- package/dist/runtime/worker.js +4 -4
- package/dist/runtime/worker.js.map +1 -1
- package/index.win32-x64-msvc.node +0 -0
- package/package.json +1 -1
package/dist/runtime/suite.d.ts
CHANGED
|
@@ -11,25 +11,25 @@ import type { TestContext } from "./context.js";
|
|
|
11
11
|
import { type TestCleanup } from "./test-context.js";
|
|
12
12
|
/**
|
|
13
13
|
* Signals completion of a `waitForDone()` test. Call `done()` to pass, or
|
|
14
|
-
* `done(error)` to fail
|
|
14
|
+
* `done(error)` to fail. Ignored unless `test.waitForDone()`.
|
|
15
15
|
*/
|
|
16
16
|
export type DoneFn = (error?: unknown) => void;
|
|
17
17
|
/**
|
|
18
18
|
* A test body. Receives the injected {@link TestContext} as its first argument
|
|
19
|
-
* and a `done` callback as its second
|
|
19
|
+
* and a `done` callback as its second. Existing zero/one-argument
|
|
20
20
|
* bodies stay valid — they simply ignore the extra parameters.
|
|
21
21
|
*/
|
|
22
22
|
export type TestFn = (ctx: TestContext, done: DoneFn) => void | Promise<void>;
|
|
23
23
|
export type SuiteFn = () => void;
|
|
24
24
|
/**
|
|
25
|
-
* Teardown a hook may return (Vitest
|
|
25
|
+
* Teardown a hook may return (Vitest parity). Receives `(hasError, subject)`
|
|
26
26
|
* — whether the test/group errored, and the Test or Group instance. Both params
|
|
27
27
|
* are optional so plain `() => …` cleanups stay valid.
|
|
28
28
|
*/
|
|
29
29
|
export type CleanupFn = (hasError?: boolean, subject?: TestInstance | GroupInstance) => void | Promise<void>;
|
|
30
30
|
/**
|
|
31
31
|
* A lifecycle hook. Receives the Test instance (test hooks) or Group instance
|
|
32
|
-
* (group hooks) as its argument
|
|
32
|
+
* (group hooks) as its argument; may return a {@link CleanupFn}.
|
|
33
33
|
* Existing zero-argument hooks stay valid.
|
|
34
34
|
*/
|
|
35
35
|
export type HookFn = ((subject?: TestInstance | GroupInstance) => void | Promise<void>) | ((subject?: TestInstance | GroupInstance) => CleanupFn | Promise<CleanupFn>);
|
|
@@ -71,11 +71,11 @@ export interface TestNode {
|
|
|
71
71
|
setups?: HookFn[];
|
|
72
72
|
/** Per-test teardown hooks — `test.teardown(fn)` (run just after this test). */
|
|
73
73
|
teardowns?: HookFn[];
|
|
74
|
-
/** Resolved dataset rows backing this test — `test(name, fn).with(rows)` (
|
|
74
|
+
/** Resolved dataset rows backing this test — `test(name, fn).with(rows)` (`ctx.test.dataset`). */
|
|
75
75
|
dataset?: readonly unknown[];
|
|
76
76
|
/**
|
|
77
77
|
* Deferred dataset source — `test(name, fn).with(rows)`. An array OR a
|
|
78
|
-
* (possibly async) function returning one
|
|
78
|
+
* (possibly async) function returning one. Resolved at RUN time
|
|
79
79
|
* so async datasets work; the node then expands into one result per row.
|
|
80
80
|
*/
|
|
81
81
|
datasetFn?: DatasetSource<unknown>;
|
|
@@ -90,13 +90,13 @@ export interface TestNode {
|
|
|
90
90
|
/** Wait for the `done()` callback before completing — `test.waitForDone()`. */
|
|
91
91
|
waitForDone?: boolean;
|
|
92
92
|
/**
|
|
93
|
-
* Deferred skip condition — `test.skip(fn)` where `fn` may be async (
|
|
93
|
+
* Deferred skip condition — `test.skip(fn)` where `fn` may be async (helix
|
|
94
94
|
* parity). Evaluated at RUN time. A static boolean sets `mode` at collection
|
|
95
95
|
* instead, so this only ever holds a function.
|
|
96
96
|
*/
|
|
97
97
|
skipCondition?: () => boolean | Promise<boolean>;
|
|
98
98
|
}
|
|
99
|
-
/** A group's instance, passed to `group.setup`/`teardown` hooks
|
|
99
|
+
/** A group's instance, passed to `group.setup`/`teardown` hooks. */
|
|
100
100
|
export interface GroupInstance {
|
|
101
101
|
/** The group's own name. */
|
|
102
102
|
title: string;
|
|
@@ -104,7 +104,7 @@ export interface GroupInstance {
|
|
|
104
104
|
fullName: string;
|
|
105
105
|
}
|
|
106
106
|
/**
|
|
107
|
-
* The running test's own instance, injected as `ctx.test
|
|
107
|
+
* The running test's own instance, injected as `ctx.test`. Read
|
|
108
108
|
* access to the test's identity + resolved options + dataset.
|
|
109
109
|
*/
|
|
110
110
|
export interface TestInstance {
|
|
@@ -112,7 +112,7 @@ export interface TestInstance {
|
|
|
112
112
|
title: string;
|
|
113
113
|
/** Fully-qualified dotted name (suite path + title). */
|
|
114
114
|
fullName: string;
|
|
115
|
-
/** Resolved options in effect for this run (
|
|
115
|
+
/** Resolved options in effect for this run (`test.options`). */
|
|
116
116
|
options: {
|
|
117
117
|
/** The test's title (leaf name). */
|
|
118
118
|
title: string;
|
|
@@ -121,20 +121,20 @@ export interface TestInstance {
|
|
|
121
121
|
tags: readonly string[];
|
|
122
122
|
/** Whether this is a `todo` test. Always `false` inside a running test. */
|
|
123
123
|
isTodo: boolean;
|
|
124
|
-
/** Whether the test is expected to throw — `test.fails()
|
|
124
|
+
/** Whether the test is expected to throw — `test.fails()`. */
|
|
125
125
|
isFailing: boolean;
|
|
126
126
|
/**
|
|
127
|
-
* Free-form metadata bag (
|
|
127
|
+
* Free-form metadata bag (`options.meta`): `fileName`, `group` (the
|
|
128
128
|
* enclosing {@link Group} instance, or `undefined` outside a group),
|
|
129
129
|
* `suite` (`{ name }` — `"default"` unless `configure({ suite })` or
|
|
130
|
-
* `--suite` names it,
|
|
130
|
+
* `--suite` names it, the implicit suite), and `abort`.
|
|
131
131
|
*/
|
|
132
132
|
meta: Record<string, unknown>;
|
|
133
133
|
};
|
|
134
134
|
/** The full dataset when created via `test(name, fn).with(rows)`, else undefined. */
|
|
135
135
|
dataset?: readonly unknown[];
|
|
136
136
|
/**
|
|
137
|
-
* The injected {@link TestContext} for this run —
|
|
137
|
+
* The injected {@link TestContext} for this run — helix's `$test.context`. Set
|
|
138
138
|
* before the `beforeEach` chain, so lifecycle hooks can reach it; the same
|
|
139
139
|
* context is passed to the test body as its first argument. Undefined only
|
|
140
140
|
* outside an active run.
|
|
@@ -143,14 +143,14 @@ export interface TestInstance {
|
|
|
143
143
|
/** Whether the test was pinned via `test.pin()`. */
|
|
144
144
|
isPinned: boolean;
|
|
145
145
|
/**
|
|
146
|
-
* Re-arm the running test's timeout (
|
|
146
|
+
* Re-arm the running test's timeout (`ctx.test.resetTimeout`). With no
|
|
147
147
|
* argument, restarts the current timeout; with `ms`, sets a new one. Useful
|
|
148
148
|
* for long polling steps that shouldn't count against a single deadline.
|
|
149
149
|
*/
|
|
150
150
|
resetTimeout(ms?: number): void;
|
|
151
151
|
/**
|
|
152
152
|
* Register a teardown that runs at the end of THIS test regardless of outcome
|
|
153
|
-
* (
|
|
153
|
+
* (`test.cleanup`). This is the same registry as `ctx.cleanup`; it is
|
|
154
154
|
* exposed here so a resource macro's `t` (see `test.macro`) can register
|
|
155
155
|
* cleanups — `test.macro((t) => { t.cleanup(() => …) })`.
|
|
156
156
|
*/
|
|
@@ -168,39 +168,39 @@ export interface TestOptions {
|
|
|
168
168
|
fails?: boolean;
|
|
169
169
|
}
|
|
170
170
|
/**
|
|
171
|
-
* Chainable handle returned by `test(...)` —
|
|
171
|
+
* Chainable handle returned by `test(...)` — helix-style fluent modifiers that
|
|
172
172
|
* mutate the just-registered node. Ignoring the return keeps Vitest's
|
|
173
|
-
* `test(name, fn)` ergonomics; chaining adds
|
|
173
|
+
* `test(name, fn)` ergonomics; chaining adds `helix` parity.
|
|
174
174
|
*/
|
|
175
|
-
/** How `tags()` merges with any tags already on the test
|
|
175
|
+
/** How `tags()` merges with any tags already on the test. */
|
|
176
176
|
export type TagStrategy = "replace" | "append" | "prepend";
|
|
177
177
|
export interface TestHandle {
|
|
178
178
|
retry(n: number): TestHandle;
|
|
179
179
|
timeout(ms: number): TestHandle;
|
|
180
180
|
disableTimeout(): TestHandle;
|
|
181
181
|
/**
|
|
182
|
-
* Attach tags.
|
|
182
|
+
* Attach tags. `tags(['@slow'], 'append')`. `strategy` defaults
|
|
183
183
|
* to `'replace'`. A single string is accepted as a shorthand.
|
|
184
184
|
*/
|
|
185
185
|
tags(tags: string | string[], strategy?: TagStrategy): TestHandle;
|
|
186
|
-
/** Expect the test to throw. Optional `reason` documents why
|
|
186
|
+
/** Expect the test to throw. Optional `reason` documents why. */
|
|
187
187
|
fails(reason?: string): TestHandle;
|
|
188
|
-
/** Run a hook just before THIS test (
|
|
188
|
+
/** Run a hook just before THIS test (`test.setup`). */
|
|
189
189
|
setup(fn: HookFn): TestHandle;
|
|
190
|
-
/** Run a hook just after THIS test (
|
|
190
|
+
/** Run a hook just after THIS test (`test.teardown`). */
|
|
191
191
|
teardown(fn: HookFn): TestHandle;
|
|
192
|
-
/** Pin the test: when any test is pinned, only pinned tests run (
|
|
192
|
+
/** Pin the test: when any test is pinned, only pinned tests run (`test.pin`). */
|
|
193
193
|
pin(): TestHandle;
|
|
194
194
|
/**
|
|
195
195
|
* Skip the test, optionally only when `condition` (a boolean OR a function
|
|
196
|
-
* returning one — which may be async
|
|
196
|
+
* returning one — which may be async) is true, with a `reason`.
|
|
197
197
|
* A function condition is evaluated at RUN time, not at collection.
|
|
198
198
|
*/
|
|
199
199
|
skip(condition?: boolean | (() => boolean | Promise<boolean>), reason?: string): TestHandle;
|
|
200
|
-
/** Complete only once the body calls its `done` callback (
|
|
200
|
+
/** Complete only once the body calls its `done` callback (`waitForDone`). */
|
|
201
201
|
waitForDone(): TestHandle;
|
|
202
202
|
/**
|
|
203
|
-
* Attach a dataset
|
|
203
|
+
* Attach a dataset. Two forms:
|
|
204
204
|
* - `test('title', (ctx, row) => …).with([...])` — the body from `test()`
|
|
205
205
|
* is re-homed and runs once per row (row typed as the 2nd body arg).
|
|
206
206
|
* - `test('title').with([...]).run((ctx, row) => …)` — the fully-typed
|
|
@@ -213,7 +213,7 @@ export interface TestHandle {
|
|
|
213
213
|
}
|
|
214
214
|
/**
|
|
215
215
|
* The handle returned by `test(...).with(rows)` — carries the dataset element
|
|
216
|
-
* type so `.run((ctx, row) => …)` types `row` precisely
|
|
216
|
+
* type so `.run((ctx, row) => …)` types `row` precisely.
|
|
217
217
|
*/
|
|
218
218
|
export interface DatasetHandle<Row> {
|
|
219
219
|
/**
|
|
@@ -235,12 +235,12 @@ export interface SuiteNode {
|
|
|
235
235
|
eachTimeout?: number;
|
|
236
236
|
/** Default per-test retries for tests in this group — `group.each.retry(n)`. */
|
|
237
237
|
eachRetries?: number;
|
|
238
|
-
/** Opened via `test.group()` (vs `describe`) —
|
|
238
|
+
/** Opened via `test.group()` (vs `describe`) — helix forbids nesting these. */
|
|
239
239
|
isGroup?: boolean;
|
|
240
240
|
/**
|
|
241
241
|
* The single {@link Group} instance built by `test.group()` for this node —
|
|
242
242
|
* the body handle, the value returned, AND the `self` its hooks receive
|
|
243
|
-
* (
|
|
243
|
+
* (`self === group`). Absent on plain `describe` suites.
|
|
244
244
|
*/
|
|
245
245
|
groupInstance?: Group;
|
|
246
246
|
}
|
|
@@ -289,12 +289,12 @@ type EachRow = ArrayRow | ObjectRow | null | undefined | string | number | boole
|
|
|
289
289
|
type EachRows<Row extends EachRow> = readonly Row[] | (() => readonly Row[]);
|
|
290
290
|
/**
|
|
291
291
|
* Source of dataset rows (`test(name, fn).with(...)`): a static array OR a
|
|
292
|
-
* function returning one — the function may be async
|
|
292
|
+
* function returning one — the function may be async. Resolved at
|
|
293
293
|
* RUN time so async sources work.
|
|
294
294
|
*/
|
|
295
295
|
export type DatasetSource<Row> = readonly Row[] | (() => readonly Row[] | Promise<readonly Row[]>);
|
|
296
296
|
/**
|
|
297
|
-
* The `group` handle passed to `test.group(name, (group) => …)
|
|
297
|
+
* The `group` handle passed to `test.group(name, (group) => …)`.
|
|
298
298
|
* `setup`/`teardown` run once for the whole group; `each.setup`/`each.teardown`
|
|
299
299
|
* run around every test in it. Hook bodies may return a cleanup function.
|
|
300
300
|
*/
|
|
@@ -319,13 +319,13 @@ export interface Group extends GroupInstance {
|
|
|
319
319
|
* `group.tap(t => { t.options.title = t.options.title.toUpperCase() })`.
|
|
320
320
|
* Applied to all tests registered in the group body. The callback receives a
|
|
321
321
|
* {@link TapHandle}: the chainable modifiers PLUS a mutable `options` view
|
|
322
|
-
* (
|
|
322
|
+
* (`test.options.title`).
|
|
323
323
|
*/
|
|
324
324
|
tap(fn: (test: TapHandle) => void): void;
|
|
325
325
|
}
|
|
326
|
-
/** The mutable, resolved options of a test, exposed to `group.tap
|
|
326
|
+
/** The mutable, resolved options of a test, exposed to `group.tap`. */
|
|
327
327
|
export interface TapOptions {
|
|
328
|
-
/** The test's title — assignable to rename it (
|
|
328
|
+
/** The test's title — assignable to rename it (`test.options.title`). */
|
|
329
329
|
title: string;
|
|
330
330
|
/** The test's tags — assignable to replace them. */
|
|
331
331
|
tags: string[];
|
|
@@ -336,7 +336,7 @@ export interface TapOptions {
|
|
|
336
336
|
}
|
|
337
337
|
/**
|
|
338
338
|
* The handle passed to `group.tap` — a {@link TestHandle} (chainable modifiers)
|
|
339
|
-
* augmented with a mutable {@link TapOptions} view, matching
|
|
339
|
+
* augmented with a mutable {@link TapOptions} view, matching helix's `test`
|
|
340
340
|
* instance whose `options` are directly assignable.
|
|
341
341
|
*/
|
|
342
342
|
export interface TapHandle extends TestHandle {
|
|
@@ -344,7 +344,7 @@ export interface TapHandle extends TestHandle {
|
|
|
344
344
|
}
|
|
345
345
|
type TestApi = {
|
|
346
346
|
/**
|
|
347
|
-
* Register a test. Omitting `fn` marks it `todo`
|
|
347
|
+
* Register a test. Omitting `fn` marks it `todo` — reported as
|
|
348
348
|
* pending and never executed — unless a dataset body is supplied later via
|
|
349
349
|
* `.with(...).run(fn)`.
|
|
350
350
|
*/
|
|
@@ -354,13 +354,13 @@ type TestApi = {
|
|
|
354
354
|
todo(name: string): void;
|
|
355
355
|
each<Row extends EachRow>(rows: EachRows<Row>): (name: string, fn: (row: Row) => void | Promise<void>) => void;
|
|
356
356
|
/**
|
|
357
|
-
*
|
|
357
|
+
* helix-style grouping: `test.group(name, (group) => { … })`. Returns the
|
|
358
358
|
* {@link Group} — the SAME instance passed to the body and to the group's
|
|
359
|
-
* hooks as `self` (
|
|
359
|
+
* hooks as `self` (helix's current release returns the group; `self === group`).
|
|
360
360
|
*/
|
|
361
361
|
group(name: string, fn: (group: Group) => void): Group;
|
|
362
362
|
/**
|
|
363
|
-
* Create a resource macro (
|
|
363
|
+
* Create a resource macro (`test.macro`). The callback receives the
|
|
364
364
|
* running test instance `t` (carrying `t.cleanup`) followed by any arguments;
|
|
365
365
|
* `macro` returns a function that, called inside a test body, invokes the
|
|
366
366
|
* callback against the active test and returns its value:
|
|
@@ -376,17 +376,17 @@ type TestApi = {
|
|
|
376
376
|
macro<Args extends unknown[], R>(callback: (test: TestInstance, ...args: Args) => R): (...args: Args) => R;
|
|
377
377
|
};
|
|
378
378
|
/**
|
|
379
|
-
* Interpolate a dataset test title
|
|
379
|
+
* Interpolate a dataset test title. Tokens:
|
|
380
380
|
* - `{$i}` → the 1-based row index
|
|
381
381
|
* - `{$self}`→ the row itself (stringified) — for primitive/array rows
|
|
382
382
|
* - `{prop}` / `{a.b}` → a (dotted) property lookup on an object row
|
|
383
383
|
* Unknown `{tokens}` are left verbatim. A template with no token at all is
|
|
384
|
-
* returned unchanged and therefore repeats for every row —
|
|
384
|
+
* returned unchanged and therefore repeats for every row — helix's behaviour,
|
|
385
385
|
* and what the golden dataset spec pins down.
|
|
386
386
|
*/
|
|
387
387
|
export declare function interpolateDatasetTitle(template: string, row: unknown, index: number): string;
|
|
388
388
|
/**
|
|
389
|
-
* Class-level extension surface (
|
|
389
|
+
* Class-level extension surface (`Test.macro`). Registers a named method
|
|
390
390
|
* available on every test handle; `this` inside it is the handle, so it can
|
|
391
391
|
* chain (`Test.macro('slow', function () { this.tags(['@slow']); return this })`).
|
|
392
392
|
* Pair with a `declare module` augmentation for the types.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../src/runtime/suite.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEnE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9E,MAAM,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,CACvB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,YAAY,GAAG,aAAa,KAClC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC1B;;;;GAIG;AACH,MAAM,MAAM,MAAM,GACf,CAAC,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAClE,CAAC,CACD,OAAO,CAAC,EAAE,YAAY,GAAG,aAAa,KACjC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;AAExC,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,CAAC;AAE7E,MAAM,WAAW,IAAI;IACpB,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,mEAAmE;IACnE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../src/runtime/suite.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime/suite.js
CHANGED
|
@@ -82,9 +82,9 @@ function registerTest(name, mode, fn, options) {
|
|
|
82
82
|
parent.children.push(node);
|
|
83
83
|
return node;
|
|
84
84
|
}
|
|
85
|
-
/** Consumer-registered handle macros (
|
|
85
|
+
/** Consumer-registered handle macros (`Test.macro`) applied to every handle. */
|
|
86
86
|
const handleMacros = new Map();
|
|
87
|
-
/** Wrap a registered node in the chainable
|
|
87
|
+
/** Wrap a registered node in the chainable helix-style handle. */
|
|
88
88
|
function makeHandle(node) {
|
|
89
89
|
const handle = {
|
|
90
90
|
retry(n) {
|
|
@@ -139,7 +139,7 @@ function makeHandle(node) {
|
|
|
139
139
|
skip(condition = true, reason) {
|
|
140
140
|
if (typeof condition === "function") {
|
|
141
141
|
// Deferred: a function condition (possibly async) is evaluated at RUN
|
|
142
|
-
// time
|
|
142
|
+
// time, not eagerly at collection.
|
|
143
143
|
node.skipCondition = condition;
|
|
144
144
|
if (reason !== undefined)
|
|
145
145
|
node.reason = reason;
|
|
@@ -183,7 +183,7 @@ function makeHandle(node) {
|
|
|
183
183
|
return datasetHandle;
|
|
184
184
|
},
|
|
185
185
|
};
|
|
186
|
-
// Apply consumer-registered macros (
|
|
186
|
+
// Apply consumer-registered macros (`Test.macro`) — `this` is the handle
|
|
187
187
|
// so the macro can chain.
|
|
188
188
|
for (const [name, fn] of handleMacros) {
|
|
189
189
|
Object.defineProperty(handle, name, {
|
|
@@ -197,7 +197,7 @@ function makeHandle(node) {
|
|
|
197
197
|
}
|
|
198
198
|
/**
|
|
199
199
|
* Build the {@link TapHandle} passed to `group.tap` — the chainable modifiers
|
|
200
|
-
* plus a mutable `options` view backed live by the node (
|
|
200
|
+
* plus a mutable `options` view backed live by the node (`test.options`).
|
|
201
201
|
*/
|
|
202
202
|
function makeTapHandle(node) {
|
|
203
203
|
const handle = makeHandle(node);
|
|
@@ -341,19 +341,19 @@ function interpolateEach(template, row, index) {
|
|
|
341
341
|
return `${template} [${index}]`;
|
|
342
342
|
}
|
|
343
343
|
/**
|
|
344
|
-
* Interpolate a dataset test title
|
|
344
|
+
* Interpolate a dataset test title. Tokens:
|
|
345
345
|
* - `{$i}` → the 1-based row index
|
|
346
346
|
* - `{$self}`→ the row itself (stringified) — for primitive/array rows
|
|
347
347
|
* - `{prop}` / `{a.b}` → a (dotted) property lookup on an object row
|
|
348
348
|
* Unknown `{tokens}` are left verbatim. A template with no token at all is
|
|
349
|
-
* returned unchanged and therefore repeats for every row —
|
|
349
|
+
* returned unchanged and therefore repeats for every row — helix's behaviour,
|
|
350
350
|
* and what the golden dataset spec pins down.
|
|
351
351
|
*/
|
|
352
352
|
export function interpolateDatasetTitle(template, row, index) {
|
|
353
|
-
// No token:
|
|
353
|
+
// No token: helix returns the title unchanged and repeats it for every row.
|
|
354
354
|
// helix used to append ` (row N)` to keep them distinct; that made titles a
|
|
355
355
|
// reporter shows — and `--tests` never matched on, since filtering reads the
|
|
356
|
-
// declared name — differ from
|
|
356
|
+
// declared name — differ from helix's for the same spec.
|
|
357
357
|
if (!/\{[^}]+\}/.test(template))
|
|
358
358
|
return template;
|
|
359
359
|
return template.replace(/\{([^}]+)\}/g, (match, tokenRaw) => {
|
|
@@ -385,7 +385,7 @@ describeFn.skip = (name, fn) => registerSuite(name, "skip", fn);
|
|
|
385
385
|
describeFn.only = (name, fn) => registerSuite(name, "only", fn);
|
|
386
386
|
describeFn.todo = (name) => registerSuite(name, "todo", () => { });
|
|
387
387
|
const testFn = ((name, fn, options) => {
|
|
388
|
-
// No body → `todo
|
|
388
|
+
// No body → `todo`. A dataset body added later via
|
|
389
389
|
// `.with(...).run(fn)` promotes it back to a runnable test.
|
|
390
390
|
const mode = fn === undefined ? "todo" : "run";
|
|
391
391
|
return makeHandle(registerTest(name, mode, fn, normaliseTestOptions(options)));
|
|
@@ -409,15 +409,15 @@ testFn.each = (rows) => {
|
|
|
409
409
|
};
|
|
410
410
|
};
|
|
411
411
|
testFn.group = (name, fn) => {
|
|
412
|
-
//
|
|
412
|
+
// helix forbids nested groups (grouping-tests docs) — a group inside a group
|
|
413
413
|
// is a structural error, not a supported nesting.
|
|
414
414
|
for (let ancestor = current(); ancestor !== undefined; ancestor = ancestor.parent) {
|
|
415
415
|
if (ancestor.isGroup) {
|
|
416
|
-
throw new Error(`test.group("${name}") cannot be nested inside group "${ancestor.name}" —
|
|
416
|
+
throw new Error(`test.group("${name}") cannot be nested inside group "${ancestor.name}" — helix does not allow nested groups.`);
|
|
417
417
|
}
|
|
418
418
|
}
|
|
419
419
|
// A group IS a suite. Build ONE instance that is the body handle, the value
|
|
420
|
-
// returned, AND the `self` the group's hooks receive (
|
|
420
|
+
// returned, AND the `self` the group's hooks receive (`self === group`).
|
|
421
421
|
// Its hook methods attach to THIS active suite via `addHook`.
|
|
422
422
|
let instance;
|
|
423
423
|
registerSuite(name, "run", () => {
|
|
@@ -482,7 +482,7 @@ testFn.macro = (callback) => {
|
|
|
482
482
|
};
|
|
483
483
|
};
|
|
484
484
|
/**
|
|
485
|
-
* Class-level extension surface (
|
|
485
|
+
* Class-level extension surface (`Test.macro`). Registers a named method
|
|
486
486
|
* available on every test handle; `this` inside it is the handle, so it can
|
|
487
487
|
* chain (`Test.macro('slow', function () { this.tags(['@slow']); return this })`).
|
|
488
488
|
* Pair with a `declare module` augmentation for the types.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/runtime/suite.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/runtime/suite.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import type { TestInstance } from "./suite.js";
|
|
16
16
|
/**
|
|
17
|
-
* A per-test teardown. Receives `(hasError, test)
|
|
17
|
+
* A per-test teardown. Receives `(hasError, test)`: whether the
|
|
18
18
|
* test failed, and the running test's instance. Both params are optional so
|
|
19
19
|
* plain `() => …` cleanups stay valid.
|
|
20
20
|
*/
|
|
@@ -41,13 +41,13 @@ export declare function inTestContext(): boolean;
|
|
|
41
41
|
export declare function setFrameTest(test: TestInstance): void;
|
|
42
42
|
/**
|
|
43
43
|
* Read the running test's instance from the active frame — the `t` handed to a
|
|
44
|
-
*
|
|
44
|
+
* helix resource macro (`test.macro((t, …) => …)`). Undefined outside a test.
|
|
45
45
|
*/
|
|
46
46
|
export declare function getFrameTest(): TestInstance | undefined;
|
|
47
|
-
/** The running test, or `undefined` outside one (
|
|
47
|
+
/** The running test, or `undefined` outside one (`getActiveTest`). */
|
|
48
48
|
export declare function getActiveTest(): TestInstance | undefined;
|
|
49
49
|
/**
|
|
50
|
-
* The running test, or a thrown error outside one —
|
|
50
|
+
* The running test, or a thrown error outside one — helix's
|
|
51
51
|
* `getActiveTestOrFail`, the guard a plugin uses before touching test state.
|
|
52
52
|
*/
|
|
53
53
|
export declare function getActiveTestOrFail(): TestInstance;
|
|
@@ -75,15 +75,15 @@ export declare function onTestFinished(cb: TestCleanup): void;
|
|
|
75
75
|
*/
|
|
76
76
|
export declare function onTestFailed(cb: TestCleanup): void;
|
|
77
77
|
/**
|
|
78
|
-
* Callbacks registered for EVERY test of the run (
|
|
79
|
-
* plugins use it to check after each test that something held —
|
|
78
|
+
* Callbacks registered for EVERY test of the run (`Test.executed`). helix
|
|
79
|
+
* plugins use it to check after each test that something held — `helix's assert`
|
|
80
80
|
* validates its planned-assertion count there.
|
|
81
81
|
*/
|
|
82
82
|
type ExecutedHook = (test: {
|
|
83
83
|
options: unknown;
|
|
84
84
|
context: unknown;
|
|
85
85
|
}, hasError: boolean) => void | Promise<void>;
|
|
86
|
-
/** Register a per-test hook for the whole run (
|
|
86
|
+
/** Register a per-test hook for the whole run (`Test.executed`). */
|
|
87
87
|
export declare function registerExecutedHook(fn: ExecutedHook): void;
|
|
88
88
|
/** Test seam: drop every registered `executed` hook. */
|
|
89
89
|
export declare function resetExecutedHooks(): void;
|
|
@@ -94,7 +94,7 @@ export declare function setFrameContext(context: unknown): void;
|
|
|
94
94
|
* then the run-wide `Test.executed` hooks.
|
|
95
95
|
*
|
|
96
96
|
* Returns what an `executed` hook threw, if one did. That hook IS a verdict —
|
|
97
|
-
*
|
|
97
|
+
* `helix's assert` validates `assert.plan(n)` there and throws when the count is
|
|
98
98
|
* wrong — so swallowing it would let a plugin's whole reason for existing pass
|
|
99
99
|
* green. The frame's own callbacks keep being logged rather than thrown: they
|
|
100
100
|
* are teardown, and a broken one must not invent a failure.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-context.d.ts","sourceRoot":"","sources":["../../src/runtime/test-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,CACzB,QAAQ,CAAC,EAAE,OAAO,EAClB,IAAI,CAAC,EAAE,YAAY,KACf,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC9B,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,wEAAwE;IACxE,aAAa,EAAE,OAAO,CAAC;CACvB;AAmBD,wBAAsB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAwB3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAKjE;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,0FAA0F;AAC1F,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAGrD;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,YAAY,GAAG,SAAS,CAEvD;AAED,
|
|
1
|
+
{"version":3,"file":"test-context.d.ts","sourceRoot":"","sources":["../../src/runtime/test-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,CACzB,QAAQ,CAAC,EAAE,OAAO,EAClB,IAAI,CAAC,EAAE,YAAY,KACf,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC9B,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,wEAAwE;IACxE,aAAa,EAAE,OAAO,CAAC;CACvB;AAmBD,wBAAsB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAwB3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAKjE;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,0FAA0F;AAC1F,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAGrD;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,YAAY,GAAG,SAAS,CAEvD;AAED,sEAAsE;AACtE,wBAAgB,aAAa,IAAI,YAAY,GAAG,SAAS,CAExD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,CAQlD;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAGvD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAK/D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAK7D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAEpD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAElD;AAED;;;;GAIG;AACH,KAAK,YAAY,GAAG,CACnB,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,EAC5C,QAAQ,EAAE,OAAO,KACb,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAI1B,oEAAoE;AACpE,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAE3D;AAED,wDAAwD;AACxD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,wDAAwD;AACxD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAGtD;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAoC7E;AAED,kFAAkF;AAClF,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAGrD;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,IAAI,IAAI,CAGvC;AAED,4DAA4D;AAC5D,wBAAgB,iBAAiB,IAAI,cAAc,GAAG,SAAS,CAE9D"}
|
|
@@ -65,17 +65,17 @@ export function setFrameTest(test) {
|
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
67
|
* Read the running test's instance from the active frame — the `t` handed to a
|
|
68
|
-
*
|
|
68
|
+
* helix resource macro (`test.macro((t, …) => …)`). Undefined outside a test.
|
|
69
69
|
*/
|
|
70
70
|
export function getFrameTest() {
|
|
71
71
|
return storage.getStore()?.test;
|
|
72
72
|
}
|
|
73
|
-
/** The running test, or `undefined` outside one (
|
|
73
|
+
/** The running test, or `undefined` outside one (`getActiveTest`). */
|
|
74
74
|
export function getActiveTest() {
|
|
75
75
|
return getFrameTest();
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
|
-
* The running test, or a thrown error outside one —
|
|
78
|
+
* The running test, or a thrown error outside one — helix's
|
|
79
79
|
* `getActiveTestOrFail`, the guard a plugin uses before touching test state.
|
|
80
80
|
*/
|
|
81
81
|
export function getActiveTestOrFail() {
|
|
@@ -129,7 +129,7 @@ export function onTestFailed(cb) {
|
|
|
129
129
|
registerOnTestFailed(cb);
|
|
130
130
|
}
|
|
131
131
|
const executedHooks = [];
|
|
132
|
-
/** Register a per-test hook for the whole run (
|
|
132
|
+
/** Register a per-test hook for the whole run (`Test.executed`). */
|
|
133
133
|
export function registerExecutedHook(fn) {
|
|
134
134
|
executedHooks.push(fn);
|
|
135
135
|
}
|
|
@@ -148,7 +148,7 @@ export function setFrameContext(context) {
|
|
|
148
148
|
* then the run-wide `Test.executed` hooks.
|
|
149
149
|
*
|
|
150
150
|
* Returns what an `executed` hook threw, if one did. That hook IS a verdict —
|
|
151
|
-
*
|
|
151
|
+
* `helix's assert` validates `assert.plan(n)` there and throws when the count is
|
|
152
152
|
* wrong — so swallowing it would let a plugin's whole reason for existing pass
|
|
153
153
|
* green. The frame's own callbacks keep being logged rather than thrown: they
|
|
154
154
|
* are teardown, and a broken one must not invent a failure.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-context.js","sourceRoot":"","sources":["../../src/runtime/test-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAsCrD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAa,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAI,IAAsB;IAC9D,MAAM,KAAK,GAAc;QACxB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE;QACnE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,KAAK;KACf,CAAC;IACF,IAAI,CAAC;QACJ,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;YAAS,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC;gBACJ,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,6DAA6D;gBAC7D,6DAA6D;gBAC7D,4DAA4D;gBAC5D,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAC;YACpD,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAoB;IACvD,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,aAAa;IAC5B,OAAO,OAAO,CAAC,QAAQ,EAAE,KAAK,SAAS,CAAC;AACzC,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY;IAC3B,OAAO,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC;AACjC,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"test-context.js","sourceRoot":"","sources":["../../src/runtime/test-context.ts"],"names":[],"mappings":"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"}
|