@effect/vitest 4.0.0-beta.66 → 4.0.0-beta.67

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/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  import type * as Duration from "effect/Duration";
5
5
  import type * as Effect from "effect/Effect";
@@ -9,37 +9,37 @@ import type * as Scope from "effect/Scope";
9
9
  import type * as FC from "effect/testing/FastCheck";
10
10
  import * as V from "vitest";
11
11
  /**
12
- * @since 1.0.0
12
+ * @since 4.0.0
13
13
  */
14
14
  export * from "vitest";
15
15
  /**
16
- * @since 1.0.0
16
+ * @since 4.0.0
17
17
  */
18
18
  export type API = V.TestAPI<{}>;
19
19
  /**
20
- * @since 1.0.0
20
+ * @since 4.0.0
21
21
  */
22
22
  export declare namespace Vitest {
23
23
  /**
24
- * @since 1.0.0
24
+ * @since 4.0.0
25
25
  */
26
26
  interface TestFunction<A, E, R, TestArgs extends Array<any>> {
27
27
  (...args: TestArgs): Effect.Effect<A, E, R>;
28
28
  }
29
29
  /**
30
- * @since 1.0.0
30
+ * @since 4.0.0
31
31
  */
32
32
  interface Test<R> {
33
33
  <A, E>(name: string, self: TestFunction<A, E, R, [V.TestContext]>, timeout?: number | V.TestOptions): void;
34
34
  }
35
35
  /**
36
- * @since 1.0.0
36
+ * @since 4.0.0
37
37
  */
38
38
  type Arbitraries = Array<Schema.Schema<any> | FC.Arbitrary<any>> | {
39
39
  [K in string]: Schema.Schema<any> | FC.Arbitrary<any>;
40
40
  };
41
41
  /**
42
- * @since 1.0.0
42
+ * @since 4.0.0
43
43
  */
44
44
  interface Tester<R> extends Vitest.Test<R> {
45
45
  skip: Vitest.Test<R>;
@@ -49,7 +49,7 @@ export declare namespace Vitest {
49
49
  each: <T>(cases: ReadonlyArray<T>) => <A, E>(name: string, self: TestFunction<A, E, R, Array<T>>, timeout?: number | V.TestOptions) => void;
50
50
  fails: Vitest.Test<R>;
51
51
  /**
52
- * @since 1.0.0
52
+ * @since 4.0.0
53
53
  */
54
54
  prop: <const Arbs extends Arbitraries, A, E>(name: string, arbitraries: Arbs, self: TestFunction<A, E, R, [
55
55
  {
@@ -63,7 +63,7 @@ export declare namespace Vitest {
63
63
  }) => void;
64
64
  }
65
65
  /**
66
- * @since 1.0.0
66
+ * @since 4.0.0
67
67
  */
68
68
  interface MethodsNonLive<R = never> extends API {
69
69
  readonly effect: Vitest.Tester<R | Scope.Scope>;
@@ -75,7 +75,7 @@ export declare namespace Vitest {
75
75
  (name: string, f: (it: Vitest.MethodsNonLive<R | R2>) => void): void;
76
76
  };
77
77
  /**
78
- * @since 1.0.0
78
+ * @since 4.0.0
79
79
  */
80
80
  readonly prop: <const Arbs extends Arbitraries>(name: string, arbitraries: Arbs, self: (properties: {
81
81
  [K in keyof Arbs]: Arbs[K] extends FC.Arbitrary<infer T> ? T : Arbs[K] extends Schema.Schema<infer T> ? T : never;
@@ -86,7 +86,7 @@ export declare namespace Vitest {
86
86
  }) => void;
87
87
  }
88
88
  /**
89
- * @since 1.0.0
89
+ * @since 4.0.0
90
90
  */
91
91
  interface Methods<R = never> extends MethodsNonLive<R> {
92
92
  readonly live: Vitest.Tester<Scope.Scope | R>;
@@ -101,22 +101,22 @@ export declare namespace Vitest {
101
101
  }
102
102
  }
103
103
  /**
104
- * @since 1.0.0
104
+ * @since 4.0.0
105
105
  */
106
106
  export declare const addEqualityTesters: () => void;
107
107
  /**
108
- * @since 1.0.0
108
+ * @since 4.0.0
109
109
  */
110
110
  export declare const effect: Vitest.Tester<Scope.Scope>;
111
111
  /**
112
- * @since 1.0.0
112
+ * @since 4.0.0
113
113
  */
114
114
  export declare const live: Vitest.Tester<Scope.Scope>;
115
115
  /**
116
116
  * Share a `Layer` between multiple tests, optionally wrapping
117
117
  * the tests in a `describe` block if a name is provided.
118
118
  *
119
- * @since 1.0.0
119
+ * @since 4.0.0
120
120
  *
121
121
  * ```ts
122
122
  * import { expect, layer } from "@effect/vitest"
@@ -161,23 +161,26 @@ export declare const layer: <R, E>(layer_: Layer.Layer<R, E>, options?: {
161
161
  (name: string, f: (it: Vitest.MethodsNonLive<R>) => void): void;
162
162
  };
163
163
  /**
164
- * @since 1.0.0
164
+ * @since 4.0.0
165
165
  */
166
166
  export declare const flakyTest: <A, E, R>(self: Effect.Effect<A, E, R | Scope.Scope>, timeout?: Duration.Input) => Effect.Effect<A, never, R>;
167
167
  /**
168
- * @since 1.0.0
168
+ * @since 4.0.0
169
169
  */
170
170
  export declare const prop: Vitest.Methods["prop"];
171
171
  /**
172
- * @since 1.0.0
172
+ * @since 4.0.0
173
+ */
174
+ /**
175
+ * @since 4.0.0
173
176
  */
174
177
  export declare const it: Vitest.Methods;
175
178
  /**
176
- * @since 1.0.0
179
+ * @since 4.0.0
177
180
  */
178
181
  export declare const makeMethods: (it: V.TestAPI) => Vitest.Methods;
179
182
  /**
180
- * @since 1.0.0
183
+ * @since 4.0.0
181
184
  */
182
185
  export declare const describeWrapped: (name: string, f: (it: Vitest.Methods) => void) => V.SuiteCollector;
183
186
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,26 +1,26 @@
1
1
  import * as V from "vitest";
2
2
  import * as internal from "./internal/internal.js";
3
3
  /**
4
- * @since 1.0.0
4
+ * @since 4.0.0
5
5
  */
6
6
  export * from "vitest";
7
7
  /**
8
- * @since 1.0.0
8
+ * @since 4.0.0
9
9
  */
10
10
  export const addEqualityTesters = internal.addEqualityTesters;
11
11
  /**
12
- * @since 1.0.0
12
+ * @since 4.0.0
13
13
  */
14
14
  export const effect = internal.effect;
15
15
  /**
16
- * @since 1.0.0
16
+ * @since 4.0.0
17
17
  */
18
18
  export const live = internal.live;
19
19
  /**
20
20
  * Share a `Layer` between multiple tests, optionally wrapping
21
21
  * the tests in a `describe` block if a name is provided.
22
22
  *
23
- * @since 1.0.0
23
+ * @since 4.0.0
24
24
  *
25
25
  * ```ts
26
26
  * import { expect, layer } from "@effect/vitest"
@@ -58,34 +58,26 @@ export const live = internal.live;
58
58
  */
59
59
  export const layer = internal.layer;
60
60
  /**
61
- * @since 1.0.0
61
+ * @since 4.0.0
62
62
  */
63
63
  export const flakyTest = internal.flakyTest;
64
64
  /**
65
- * @since 1.0.0
65
+ * @since 4.0.0
66
66
  */
67
67
  export const prop = internal.prop;
68
68
  /**
69
- * @since 1.0.0
69
+ * @since 4.0.0
70
70
  */
71
- /** @ignored */
72
- const methods = {
73
- effect,
74
- live,
75
- flakyTest,
76
- layer,
77
- prop
78
- };
79
71
  /**
80
- * @since 1.0.0
72
+ * @since 4.0.0
81
73
  */
82
- export const it = /*#__PURE__*/Object.assign(V.it, methods);
74
+ export const it = /*#__PURE__*/internal.makeMethods(V.it);
83
75
  /**
84
- * @since 1.0.0
76
+ * @since 4.0.0
85
77
  */
86
78
  export const makeMethods = internal.makeMethods;
87
79
  /**
88
- * @since 1.0.0
80
+ * @since 4.0.0
89
81
  */
90
82
  export const describeWrapped = internal.describeWrapped;
91
83
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["V","internal","addEqualityTesters","effect","live","layer","flakyTest","prop","methods","it","Object","assign","makeMethods","describeWrapped"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,CAAC,MAAM,QAAQ;AAC3B,OAAO,KAAKC,QAAQ,MAAM,wBAAwB;AAElD;;;AAGA,cAAc,QAAQ;AAiJtB;;;AAGA,OAAO,MAAMC,kBAAkB,GAAeD,QAAQ,CAACC,kBAAkB;AAEzE;;;AAGA,OAAO,MAAMC,MAAM,GAA+BF,QAAQ,CAACE,MAAM;AAEjE;;;AAGA,OAAO,MAAMC,IAAI,GAA+BH,QAAQ,CAACG,IAAI;AAE7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,OAAO,MAAMC,KAAK,GAUdJ,QAAQ,CAACI,KAAK;AAElB;;;AAGA,OAAO,MAAMC,SAAS,GAGYL,QAAQ,CAACK,SAAS;AAEpD;;;AAGA,OAAO,MAAMC,IAAI,GAA2BN,QAAQ,CAACM,IAAI;AAEzD;;;AAIA;AACA,MAAMC,OAAO,GAAG;EAAEL,MAAM;EAAEC,IAAI;EAAEE,SAAS;EAAED,KAAK;EAAEE;AAAI,CAAW;AAEjE;;;AAGA,OAAO,MAAME,EAAE,gBAAmBC,MAAM,CAACC,MAAM,CAACX,CAAC,CAACS,EAAE,EAAED,OAAO,CAAC;AAE9D;;;AAGA,OAAO,MAAMI,WAAW,GAAsCX,QAAQ,CAACW,WAAW;AAElF;;;AAGA,OAAO,MAAMC,eAAe,GAC1BZ,QAAQ,CAACY,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["V","internal","addEqualityTesters","effect","live","layer","flakyTest","prop","it","makeMethods","describeWrapped"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,CAAC,MAAM,QAAQ;AAC3B,OAAO,KAAKC,QAAQ,MAAM,wBAAwB;AAElD;;;AAGA,cAAc,QAAQ;AAiJtB;;;AAGA,OAAO,MAAMC,kBAAkB,GAAeD,QAAQ,CAACC,kBAAkB;AAEzE;;;AAGA,OAAO,MAAMC,MAAM,GAA+BF,QAAQ,CAACE,MAAM;AAEjE;;;AAGA,OAAO,MAAMC,IAAI,GAA+BH,QAAQ,CAACG,IAAI;AAE7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,OAAO,MAAMC,KAAK,GAUdJ,QAAQ,CAACI,KAAK;AAElB;;;AAGA,OAAO,MAAMC,SAAS,GAGYL,QAAQ,CAACK,SAAS;AAEpD;;;AAGA,OAAO,MAAMC,IAAI,GAA2BN,QAAQ,CAACM,IAAI;AAEzD;;;AAIA;;;AAGA,OAAO,MAAMC,EAAE,gBAAmBP,QAAQ,CAACQ,WAAW,CAACT,CAAC,CAACQ,EAAE,CAAC;AAE5D;;;AAGA,OAAO,MAAMC,WAAW,GAAsCR,QAAQ,CAACQ,WAAW;AAElF;;;AAGA,OAAO,MAAMC,eAAe,GAC1BT,QAAQ,CAACS,eAAe","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  export {};
5
5
  //# sourceMappingURL=internal.d.ts.map
@@ -1,6 +1,7 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
+ import { getCurrentSuite } from "@vitest/runner";
4
5
  import * as Cause from "effect/Cause";
5
6
  import * as Duration from "effect/Duration";
6
7
  import * as Effect from "effect/Effect";
@@ -38,6 +39,30 @@ export const addEqualityTesters = () => {
38
39
  const testOptions = timeout => typeof timeout === "number" ? {
39
40
  timeout
40
41
  } : timeout ?? {};
42
+ const hookTimeout = timeout => timeout === undefined ? undefined : Duration.toMillis(Duration.fromInputUnsafe(timeout));
43
+ const makeItProxy = (it, overrides) => new Proxy(it, {
44
+ apply(target, thisArg, argArray) {
45
+ return Reflect.apply(target, thisArg, argArray);
46
+ },
47
+ get(target, property, receiver) {
48
+ if (property in overrides) {
49
+ return Reflect.get(overrides, property);
50
+ }
51
+ const value = Reflect.get(target, property, receiver);
52
+ return typeof value === "function" ? value.bind(target) : value;
53
+ }
54
+ });
55
+ const collectTasks = (tasks, acc = []) => {
56
+ for (let i = 0; i < tasks.length; i++) {
57
+ const task = tasks[i];
58
+ if (task.type === "test" && task.mode !== "skip" && task.mode !== "todo") {
59
+ acc.push(task);
60
+ } else if (task.tasks !== undefined) {
61
+ collectTasks(task.tasks, acc);
62
+ }
63
+ }
64
+ return acc;
65
+ };
41
66
  /** @internal */
42
67
  const makeTester = (mapEffect, it = V.it) => {
43
68
  const run = (ctx, args, self) => pipe(Effect.suspend(() => self(...args)), mapEffect, runTest(ctx));
@@ -122,33 +147,62 @@ export const layer = (layer_, options) => (...args) => {
122
147
  const memoMap = options?.memoMap ?? Effect.runSync(Layer.makeMemoMap);
123
148
  const scope = Effect.runSync(Scope.make());
124
149
  const contextEffect = Layer.buildWithMemoMap(withTestEnv, memoMap, scope).pipe(Effect.orDie, Effect.cached, Effect.runSync);
125
- const makeIt = it => Object.assign(it, {
150
+ let closed = false;
151
+ const closeScope = ctx => {
152
+ if (closed) {
153
+ return Promise.resolve();
154
+ }
155
+ closed = true;
156
+ return runPromise(Scope.close(scope, Exit.void), ctx);
157
+ };
158
+ const makeIt = it => makeItProxy(it, {
126
159
  effect: makeTester(effect => Effect.flatMap(contextEffect, context => effect.pipe(Effect.scoped, Effect.provide(context))), it),
127
160
  prop,
128
161
  flakyTest,
129
162
  layer(nestedLayer, options) {
130
163
  return layer(Layer.provideMerge(nestedLayer, withTestEnv), {
131
164
  ...options,
132
- memoMap,
165
+ memoMap: Layer.forkMemoMapUnsafe(memoMap),
133
166
  excludeTestServices
134
167
  });
135
168
  }
136
169
  });
137
170
  if (args.length === 1) {
138
- V.beforeAll(() => runPromise(Effect.asVoid(contextEffect)), options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined);
139
- V.afterAll(() => runPromise(Scope.close(scope, Exit.void)), options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined);
140
- return args[0](makeIt(V.it));
171
+ const currentSuite = getCurrentSuite();
172
+ const previousTasks = new Set(currentSuite.tasks);
173
+ args[0](makeIt(V.it));
174
+ const blockTasks = collectTasks(currentSuite.tasks.filter(task => !previousTasks.has(task)));
175
+ if (blockTasks.length === 0) {
176
+ V.afterAll(() => closeScope(), hookTimeout(options?.timeout));
177
+ return;
178
+ }
179
+ const blockTaskSet = new Set(blockTasks);
180
+ let remaining = blockTasks.length;
181
+ V.beforeEach(ctx => {
182
+ if (!blockTaskSet.has(ctx.task)) {
183
+ return;
184
+ }
185
+ ctx.onTestFinished(() => {
186
+ remaining--;
187
+ if (remaining === 0) {
188
+ return closeScope(ctx);
189
+ }
190
+ });
191
+ return runPromise(Effect.asVoid(contextEffect), ctx);
192
+ }, hookTimeout(options?.timeout));
193
+ V.afterAll(() => closeScope(), hookTimeout(options?.timeout));
194
+ return;
141
195
  }
142
196
  return V.describe(args[0], () => {
143
- V.beforeAll(() => runPromise(Effect.asVoid(contextEffect)), options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined);
144
- V.afterAll(() => runPromise(Scope.close(scope, Exit.void)), options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined);
197
+ V.beforeAll(() => runPromise(Effect.asVoid(contextEffect)), hookTimeout(options?.timeout));
198
+ V.afterAll(() => closeScope(), hookTimeout(options?.timeout));
145
199
  return args[1](makeIt(V.it));
146
200
  });
147
201
  };
148
202
  /** @internal */
149
203
  export const flakyTest = (self, timeout = Duration.seconds(30)) => pipe(self, Effect.scoped, Effect.sandbox, Effect.retry(pipe(Schedule.recurs(10), Schedule.while(_ => Effect.succeed(Duration.isLessThanOrEqualTo(Duration.fromInputUnsafe(_.elapsed), Duration.fromInputUnsafe(timeout)))))), Effect.orDie);
150
204
  /** @internal */
151
- export const makeMethods = it => Object.assign(it, {
205
+ export const makeMethods = it => makeItProxy(it, {
152
206
  effect: makeTester(flow(Effect.scoped, Effect.provide(TestEnv)), it),
153
207
  live: makeTester(Effect.scoped, it),
154
208
  flakyTest,
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","names":["Cause","Duration","Effect","Exit","flow","pipe","Layer","isObject","Schedule","Schema","Scope","fc","TestClock","TestConsole","V","runPromise","fnUntraced","effect","_ctx","exit","isFailure","errors","prettyErrors","cause","i","length","logError","_","ctx","signal","runTest","TestEnv","mergeAll","layer","addEqualityTesters","expect","testOptions","timeout","makeTester","mapEffect","it","run","args","self","suspend","f","name","skip","skipIf","condition","runIf","only","each","cases","for","fails","prop","arbitraries","Array","isArray","arbs","map","arbitrary","isSchema","toArbitrary","assert","asyncProperty","as","fastCheck","record","Object","keys","reduce","result","key","arb","assign","Error","property","layer_","options","excludeTestServices","withTestEnv","provideMerge","memoMap","runSync","makeMemoMap","scope","make","contextEffect","buildWithMemoMap","orDie","cached","makeIt","flatMap","context","scoped","provide","flakyTest","nestedLayer","beforeAll","asVoid","toMillis","fromInputUnsafe","undefined","afterAll","close","void","describe","seconds","sandbox","retry","recurs","while","succeed","isLessThanOrEqualTo","elapsed","makeMethods","live","describeWrapped"],"sources":["../../src/internal/internal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"internal.js","names":["getCurrentSuite","Cause","Duration","Effect","Exit","flow","pipe","Layer","isObject","Schedule","Schema","Scope","fc","TestClock","TestConsole","V","runPromise","fnUntraced","effect","_ctx","exit","isFailure","errors","prettyErrors","cause","i","length","logError","_","ctx","signal","runTest","TestEnv","mergeAll","layer","addEqualityTesters","expect","testOptions","timeout","hookTimeout","undefined","toMillis","fromInputUnsafe","makeItProxy","it","overrides","Proxy","apply","target","thisArg","argArray","Reflect","get","property","receiver","value","bind","collectTasks","tasks","acc","task","type","mode","push","makeTester","mapEffect","run","args","self","suspend","f","name","skip","skipIf","condition","runIf","only","each","cases","for","fails","prop","arbitraries","Array","isArray","arbs","map","arbitrary","isSchema","toArbitrary","assert","asyncProperty","as","fastCheck","record","Object","keys","reduce","result","key","arb","assign","Error","layer_","options","excludeTestServices","withTestEnv","provideMerge","memoMap","runSync","makeMemoMap","scope","make","contextEffect","buildWithMemoMap","orDie","cached","closed","closeScope","Promise","resolve","close","void","makeIt","flatMap","context","scoped","provide","flakyTest","nestedLayer","forkMemoMapUnsafe","currentSuite","previousTasks","Set","blockTasks","filter","has","afterAll","blockTaskSet","remaining","beforeEach","onTestFinished","asVoid","describe","beforeAll","seconds","sandbox","retry","recurs","while","succeed","isLessThanOrEqualTo","elapsed","makeMethods","live","describeWrapped"],"sources":["../../src/internal/internal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/utils.d.ts CHANGED
@@ -1,4 +1,18 @@
1
1
  /**
2
+ * Assertion utilities for `@effect/vitest` test suites.
3
+ *
4
+ * This module collects small assertion helpers for common Effect testing
5
+ * scenarios: Node-style equality checks, `Equal.equals` comparisons, string
6
+ * matching, thrown error validation, and focused assertions for `Option`,
7
+ * `Result`, and `Exit` values. They are intended to be imported as `assert`
8
+ * helpers from `@effect/vitest` and used in both regular Vitest tests and
9
+ * `it.effect` tests after the value under test has already been produced.
10
+ *
11
+ * These helpers throw assertion errors synchronously; they do not run Effects,
12
+ * provide services, or advance test environments such as `TestClock`. In
13
+ * Effect-based tests, yield the effect first and then assert on the resulting
14
+ * value so failures are reported through the surrounding Vitest test.
15
+ *
2
16
  * @since 4.0.0
3
17
  */
4
18
  import type * as Cause from "effect/Cause";
@@ -12,19 +26,19 @@ import * as Result from "effect/Result";
12
26
  */
13
27
  export declare function fail(message: string): void;
14
28
  /**
15
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
29
+ * Asserts that `actual` is deeply strictly equal to `expected` using Node's `assert.deepStrictEqual`.
16
30
  *
17
31
  * @since 4.0.0
18
32
  */
19
33
  export declare function deepStrictEqual<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void;
20
34
  /**
21
- * Asserts that `actual` is not equal to `expected` using the `Equal.equals` trait.
35
+ * Asserts that `actual` is not deeply strictly equal to `expected` using Node's `assert.notDeepStrictEqual`.
22
36
  *
23
37
  * @since 4.0.0
24
38
  */
25
39
  export declare function notDeepStrictEqual<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void;
26
40
  /**
27
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
41
+ * Asserts that `actual` is strictly equal to `expected` using Node's `assert.strictEqual`.
28
42
  *
29
43
  * @since 4.0.0
30
44
  */
@@ -72,13 +86,13 @@ export declare function assertInclude(actual: string | undefined, expected: stri
72
86
  */
73
87
  export declare function assertMatch(actual: string, regExp: RegExp, ..._: Array<never>): void;
74
88
  /**
75
- * Asserts that `thunk` throws an error.
89
+ * Asserts that `thunk` throws, optionally checking the thrown value against an expected `Error` or validation function.
76
90
  *
77
91
  * @since 4.0.0
78
92
  */
79
93
  export declare function throws(thunk: () => void, error?: Error | ((u: unknown) => undefined), ..._: Array<never>): void;
80
94
  /**
81
- * Asserts that `thunk` throws an error.
95
+ * Asserts that `thunk` throws or returns a rejected promise, optionally checking the failure value against an expected `Error` or validation function.
82
96
  *
83
97
  * @since 4.0.0
84
98
  */
@@ -102,31 +116,31 @@ export declare function assertDefined<A>(a: A | undefined, ..._: Array<never>):
102
116
  */
103
117
  export declare function assertUndefined<A>(a: A | undefined, ..._: Array<never>): asserts a is undefined;
104
118
  /**
105
- * Asserts that `option` is `Some`.
119
+ * Asserts that `option` is `Some` and contains a value equal to `expected`.
106
120
  *
107
121
  * @since 4.0.0
108
122
  */
109
123
  export declare function assertSome<A>(option: Option.Option<A>, expected: A, ..._: Array<never>): asserts option is Option.Some<A>;
110
124
  /**
111
- * Asserts that `result` is `Success`.
125
+ * Asserts that `result` is `Success` and contains a value equal to `expected`.
112
126
  *
113
127
  * @since 4.0.0
114
128
  */
115
129
  export declare function assertSuccess<A, E>(result: Result.Result<A, E>, expected: A, ..._: Array<never>): asserts result is Result.Success<A, never>;
116
130
  /**
117
- * Asserts that `result` is `Failure`.
131
+ * Asserts that `result` is `Failure` and contains an error equal to `expected`.
118
132
  *
119
133
  * @since 4.0.0
120
134
  */
121
135
  export declare function assertFailure<A, E>(result: Result.Result<A, E>, expected: E, ..._: Array<never>): asserts result is Result.Failure<never, E>;
122
136
  /**
123
- * Asserts that `exit` is a failure.
137
+ * Asserts that `exit` is a failure with a cause equal to `expected`.
124
138
  *
125
139
  * @since 4.0.0
126
140
  */
127
141
  export declare function assertExitFailure<A, E>(exit: Exit.Exit<A, E>, expected: Cause.Cause<E>, ..._: Array<never>): asserts exit is Exit.Failure<never, E>;
128
142
  /**
129
- * Asserts that `exit` is a success.
143
+ * Asserts that `exit` is a success with a value equal to `expected`.
130
144
  *
131
145
  * @since 4.0.0
132
146
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -17,7 +17,7 @@ export function fail(message) {
17
17
  assert.fail(message);
18
18
  }
19
19
  /**
20
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
20
+ * Asserts that `actual` is deeply strictly equal to `expected` using Node's `assert.deepStrictEqual`.
21
21
  *
22
22
  * @since 4.0.0
23
23
  */
@@ -25,7 +25,7 @@ export function deepStrictEqual(actual, expected, message, ..._) {
25
25
  assert.deepStrictEqual(actual, expected, message);
26
26
  }
27
27
  /**
28
- * Asserts that `actual` is not equal to `expected` using the `Equal.equals` trait.
28
+ * Asserts that `actual` is not deeply strictly equal to `expected` using Node's `assert.notDeepStrictEqual`.
29
29
  *
30
30
  * @since 4.0.0
31
31
  */
@@ -33,7 +33,7 @@ export function notDeepStrictEqual(actual, expected, message, ..._) {
33
33
  assert.notDeepStrictEqual(actual, expected, message);
34
34
  }
35
35
  /**
36
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
36
+ * Asserts that `actual` is strictly equal to `expected` using Node's `assert.strictEqual`.
37
37
  *
38
38
  * @since 4.0.0
39
39
  */
@@ -109,7 +109,7 @@ export function assertMatch(actual, regExp, ..._) {
109
109
  }
110
110
  }
111
111
  /**
112
- * Asserts that `thunk` throws an error.
112
+ * Asserts that `thunk` throws, optionally checking the thrown value against an expected `Error` or validation function.
113
113
  *
114
114
  * @since 4.0.0
115
115
  */
@@ -130,7 +130,7 @@ export function throws(thunk, error, ..._) {
130
130
  }
131
131
  }
132
132
  /**
133
- * Asserts that `thunk` throws an error.
133
+ * Asserts that `thunk` throws or returns a rejected promise, optionally checking the failure value against an expected `Error` or validation function.
134
134
  *
135
135
  * @since 4.0.0
136
136
  */
@@ -180,7 +180,7 @@ export function assertUndefined(a, ..._) {
180
180
  }
181
181
  }
182
182
  /**
183
- * Asserts that `option` is `Some`.
183
+ * Asserts that `option` is `Some` and contains a value equal to `expected`.
184
184
  *
185
185
  * @since 4.0.0
186
186
  */
@@ -191,7 +191,7 @@ export function assertSome(option, expected, ..._) {
191
191
  // Result
192
192
  // ----------------------------
193
193
  /**
194
- * Asserts that `result` is `Success`.
194
+ * Asserts that `result` is `Success` and contains a value equal to `expected`.
195
195
  *
196
196
  * @since 4.0.0
197
197
  */
@@ -199,7 +199,7 @@ export function assertSuccess(result, expected, ..._) {
199
199
  deepStrictEqual(result, Result.succeed(expected));
200
200
  }
201
201
  /**
202
- * Asserts that `result` is `Failure`.
202
+ * Asserts that `result` is `Failure` and contains an error equal to `expected`.
203
203
  *
204
204
  * @since 4.0.0
205
205
  */
@@ -210,7 +210,7 @@ export function assertFailure(result, expected, ..._) {
210
210
  // Exit
211
211
  // ----------------------------
212
212
  /**
213
- * Asserts that `exit` is a failure.
213
+ * Asserts that `exit` is a failure with a cause equal to `expected`.
214
214
  *
215
215
  * @since 4.0.0
216
216
  */
@@ -218,7 +218,7 @@ export function assertExitFailure(exit, expected, ..._) {
218
218
  deepStrictEqual(exit, Exit.failCause(expected));
219
219
  }
220
220
  /**
221
- * Asserts that `exit` is a success.
221
+ * Asserts that `exit` is a success with a value equal to `expected`.
222
222
  *
223
223
  * @since 4.0.0
224
224
  */
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["Equal","Exit","Option","Predicate","Result","assert","vassert","fail","message","deepStrictEqual","actual","expected","_","notDeepStrictEqual","strictEqual","assertEquals","equals","doesNotThrow","thunk","assertInstanceOf","value","constructor","instanceOf","assertTrue","self","assertFalse","assertInclude","includes","assertMatch","regExp","test","throws","error","e","undefined","isFunction","throwsAsync","assertNone","option","none","assertDefined","a","assertUndefined","assertSome","some","assertSuccess","result","succeed","assertFailure","assertExitFailure","exit","failCause","assertExitSuccess"],"sources":["../src/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["Equal","Exit","Option","Predicate","Result","assert","vassert","fail","message","deepStrictEqual","actual","expected","_","notDeepStrictEqual","strictEqual","assertEquals","equals","doesNotThrow","thunk","assertInstanceOf","value","constructor","instanceOf","assertTrue","self","assertFalse","assertInclude","includes","assertMatch","regExp","test","throws","error","e","undefined","isFunction","throwsAsync","assertNone","option","none","assertDefined","a","assertUndefined","assertSome","some","assertSuccess","result","succeed","assertFailure","assertExitFailure","exit","failCause","assertExitSuccess"],"sources":["../src/utils.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/vitest",
3
- "version": "4.0.0-beta.66",
3
+ "version": "4.0.0-beta.67",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "A set of helpers for testing Effects with vitest",
@@ -34,12 +34,13 @@
34
34
  },
35
35
  "peerDependencies": {
36
36
  "vitest": "^3.0.0 || ^4.0.0",
37
- "effect": "^4.0.0-beta.66"
37
+ "effect": "^4.0.0-beta.67"
38
38
  },
39
39
  "devDependencies": {
40
- "@types/node": "^25.6.0",
40
+ "@types/node": "^25.7.0",
41
+ "@vitest/runner": "4.1.4",
41
42
  "vitest": "4.1.4",
42
- "effect": "^4.0.0-beta.66"
43
+ "effect": "^4.0.0-beta.67"
43
44
  },
44
45
  "scripts": {
45
46
  "build": "tsc -b tsconfig.json && pnpm babel",
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  import type * as Duration from "effect/Duration"
5
5
  import type * as Effect from "effect/Effect"
@@ -11,28 +11,28 @@ import * as V from "vitest"
11
11
  import * as internal from "./internal/internal.ts"
12
12
 
13
13
  /**
14
- * @since 1.0.0
14
+ * @since 4.0.0
15
15
  */
16
16
  export * from "vitest"
17
17
 
18
18
  /**
19
- * @since 1.0.0
19
+ * @since 4.0.0
20
20
  */
21
21
  export type API = V.TestAPI<{}>
22
22
 
23
23
  /**
24
- * @since 1.0.0
24
+ * @since 4.0.0
25
25
  */
26
26
  export namespace Vitest {
27
27
  /**
28
- * @since 1.0.0
28
+ * @since 4.0.0
29
29
  */
30
30
  export interface TestFunction<A, E, R, TestArgs extends Array<any>> {
31
31
  (...args: TestArgs): Effect.Effect<A, E, R>
32
32
  }
33
33
 
34
34
  /**
35
- * @since 1.0.0
35
+ * @since 4.0.0
36
36
  */
37
37
  export interface Test<R> {
38
38
  <A, E>(
@@ -43,14 +43,14 @@ export namespace Vitest {
43
43
  }
44
44
 
45
45
  /**
46
- * @since 1.0.0
46
+ * @since 4.0.0
47
47
  */
48
48
  export type Arbitraries =
49
49
  | Array<Schema.Schema<any> | FC.Arbitrary<any>>
50
50
  | { [K in string]: Schema.Schema<any> | FC.Arbitrary<any> }
51
51
 
52
52
  /**
53
- * @since 1.0.0
53
+ * @since 4.0.0
54
54
  */
55
55
  export interface Tester<R> extends Vitest.Test<R> {
56
56
  skip: Vitest.Test<R>
@@ -63,7 +63,7 @@ export namespace Vitest {
63
63
  fails: Vitest.Test<R>
64
64
 
65
65
  /**
66
- * @since 1.0.0
66
+ * @since 4.0.0
67
67
  */
68
68
  prop: <const Arbs extends Arbitraries, A, E>(
69
69
  name: string,
@@ -95,7 +95,7 @@ export namespace Vitest {
95
95
  }
96
96
 
97
97
  /**
98
- * @since 1.0.0
98
+ * @since 4.0.0
99
99
  */
100
100
  export interface MethodsNonLive<R = never> extends API {
101
101
  readonly effect: Vitest.Tester<R | Scope.Scope>
@@ -114,7 +114,7 @@ export namespace Vitest {
114
114
  }
115
115
 
116
116
  /**
117
- * @since 1.0.0
117
+ * @since 4.0.0
118
118
  */
119
119
  readonly prop: <const Arbs extends Arbitraries>(
120
120
  name: string,
@@ -140,7 +140,7 @@ export namespace Vitest {
140
140
  }
141
141
 
142
142
  /**
143
- * @since 1.0.0
143
+ * @since 4.0.0
144
144
  */
145
145
  export interface Methods<R = never> extends MethodsNonLive<R> {
146
146
  readonly live: Vitest.Tester<Scope.Scope | R>
@@ -159,17 +159,17 @@ export namespace Vitest {
159
159
  }
160
160
 
161
161
  /**
162
- * @since 1.0.0
162
+ * @since 4.0.0
163
163
  */
164
164
  export const addEqualityTesters: () => void = internal.addEqualityTesters
165
165
 
166
166
  /**
167
- * @since 1.0.0
167
+ * @since 4.0.0
168
168
  */
169
169
  export const effect: Vitest.Tester<Scope.Scope> = internal.effect
170
170
 
171
171
  /**
172
- * @since 1.0.0
172
+ * @since 4.0.0
173
173
  */
174
174
  export const live: Vitest.Tester<Scope.Scope> = internal.live
175
175
 
@@ -177,7 +177,7 @@ export const live: Vitest.Tester<Scope.Scope> = internal.live
177
177
  * Share a `Layer` between multiple tests, optionally wrapping
178
178
  * the tests in a `describe` block if a name is provided.
179
179
  *
180
- * @since 1.0.0
180
+ * @since 4.0.0
181
181
  *
182
182
  * ```ts
183
183
  * import { expect, layer } from "@effect/vitest"
@@ -226,7 +226,7 @@ export const layer: <R, E>(
226
226
  } = internal.layer
227
227
 
228
228
  /**
229
- * @since 1.0.0
229
+ * @since 4.0.0
230
230
  */
231
231
  export const flakyTest: <A, E, R>(
232
232
  self: Effect.Effect<A, E, R | Scope.Scope>,
@@ -234,29 +234,26 @@ export const flakyTest: <A, E, R>(
234
234
  ) => Effect.Effect<A, never, R> = internal.flakyTest
235
235
 
236
236
  /**
237
- * @since 1.0.0
237
+ * @since 4.0.0
238
238
  */
239
239
  export const prop: Vitest.Methods["prop"] = internal.prop
240
240
 
241
241
  /**
242
- * @since 1.0.0
242
+ * @since 4.0.0
243
243
  */
244
244
 
245
- /** @ignored */
246
- const methods = { effect, live, flakyTest, layer, prop } as const
247
-
248
245
  /**
249
- * @since 1.0.0
246
+ * @since 4.0.0
250
247
  */
251
- export const it: Vitest.Methods = Object.assign(V.it, methods)
248
+ export const it: Vitest.Methods = internal.makeMethods(V.it)
252
249
 
253
250
  /**
254
- * @since 1.0.0
251
+ * @since 4.0.0
255
252
  */
256
253
  export const makeMethods: (it: V.TestAPI) => Vitest.Methods = internal.makeMethods
257
254
 
258
255
  /**
259
- * @since 1.0.0
256
+ * @since 4.0.0
260
257
  */
261
258
  export const describeWrapped: (name: string, f: (it: Vitest.Methods) => void) => V.SuiteCollector =
262
259
  internal.describeWrapped
@@ -1,7 +1,8 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
 
5
+ import { getCurrentSuite } from "@vitest/runner"
5
6
  import * as Cause from "effect/Cause"
6
7
  import * as Duration from "effect/Duration"
7
8
  import * as Effect from "effect/Effect"
@@ -48,6 +49,44 @@ export const addEqualityTesters = () => {
48
49
  /** @internal */
49
50
  const testOptions = (timeout?: number | V.TestOptions) => typeof timeout === "number" ? { timeout } : timeout ?? {}
50
51
 
52
+ const hookTimeout = (timeout?: Duration.Input) =>
53
+ timeout === undefined ? undefined : Duration.toMillis(Duration.fromInputUnsafe(timeout))
54
+
55
+ const makeItProxy = <Methods extends object>(
56
+ it: V.TestAPI,
57
+ overrides: Methods
58
+ ): Methods & V.TestAPI =>
59
+ new Proxy(it as Methods & V.TestAPI, {
60
+ apply(target, thisArg, argArray) {
61
+ return Reflect.apply(target, thisArg, argArray)
62
+ },
63
+ get(target, property, receiver) {
64
+ if (property in overrides) {
65
+ return Reflect.get(overrides, property)
66
+ }
67
+ const value = Reflect.get(target, property, receiver)
68
+ return typeof value === "function" ? value.bind(target) : value
69
+ }
70
+ })
71
+
72
+ type CollectedTask = {
73
+ readonly type: string
74
+ readonly mode?: string
75
+ readonly tasks?: ReadonlyArray<CollectedTask>
76
+ }
77
+
78
+ const collectTasks = (tasks: ReadonlyArray<CollectedTask>, acc: Array<V.TestContext["task"]> = []) => {
79
+ for (let i = 0; i < tasks.length; i++) {
80
+ const task = tasks[i]
81
+ if (task.type === "test" && task.mode !== "skip" && task.mode !== "todo") {
82
+ acc.push(task as V.TestContext["task"])
83
+ } else if (task.tasks !== undefined) {
84
+ collectTasks(task.tasks, acc)
85
+ }
86
+ }
87
+ return acc
88
+ }
89
+
51
90
  /** @internal */
52
91
  const makeTester = <R>(
53
92
  mapEffect: <A, E>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, never>,
@@ -207,9 +246,17 @@ export const layer = <R, E>(
207
246
  Effect.cached,
208
247
  Effect.runSync
209
248
  )
249
+ let closed = false
250
+ const closeScope = (ctx?: Vitest.TestContext) => {
251
+ if (closed) {
252
+ return Promise.resolve()
253
+ }
254
+ closed = true
255
+ return runPromise(Scope.close(scope, Exit.void), ctx)
256
+ }
210
257
 
211
258
  const makeIt = (it: V.TestAPI): Vitest.Vitest.MethodsNonLive<R> =>
212
- Object.assign(it, {
259
+ makeItProxy(it, {
213
260
  effect: makeTester<R | Scope.Scope>(
214
261
  (effect) =>
215
262
  Effect.flatMap(contextEffect, (context) =>
@@ -224,30 +271,58 @@ export const layer = <R, E>(
224
271
  layer<R2, E2>(nestedLayer: Layer.Layer<R2, E2, R>, options?: {
225
272
  readonly timeout?: Duration.Input
226
273
  }) {
227
- return layer(Layer.provideMerge(nestedLayer, withTestEnv), { ...options, memoMap, excludeTestServices })
274
+ return layer(Layer.provideMerge(nestedLayer, withTestEnv), {
275
+ ...options,
276
+ memoMap: Layer.forkMemoMapUnsafe(memoMap),
277
+ excludeTestServices
278
+ })
228
279
  }
229
280
  })
230
281
 
231
282
  if (args.length === 1) {
232
- V.beforeAll(
233
- () => runPromise(Effect.asVoid(contextEffect)),
234
- options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined
283
+ const currentSuite = getCurrentSuite()
284
+ const previousTasks = new Set(currentSuite.tasks)
285
+
286
+ args[0](makeIt(V.it))
287
+
288
+ const blockTasks = collectTasks(
289
+ currentSuite.tasks.filter((task) => !previousTasks.has(task)) as ReadonlyArray<CollectedTask>
235
290
  )
236
- V.afterAll(
237
- () => runPromise(Scope.close(scope, Exit.void)),
238
- options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined
291
+ if (blockTasks.length === 0) {
292
+ V.afterAll(() => closeScope(), hookTimeout(options?.timeout))
293
+ return
294
+ }
295
+
296
+ const blockTaskSet = new Set(blockTasks)
297
+ let remaining = blockTasks.length
298
+
299
+ V.beforeEach(
300
+ (ctx) => {
301
+ if (!blockTaskSet.has(ctx.task)) {
302
+ return
303
+ }
304
+ ctx.onTestFinished(() => {
305
+ remaining--
306
+ if (remaining === 0) {
307
+ return closeScope(ctx)
308
+ }
309
+ })
310
+ return runPromise(Effect.asVoid(contextEffect), ctx)
311
+ },
312
+ hookTimeout(options?.timeout)
239
313
  )
240
- return args[0](makeIt(V.it))
314
+ V.afterAll(() => closeScope(), hookTimeout(options?.timeout))
315
+ return
241
316
  }
242
317
 
243
318
  return V.describe(args[0], () => {
244
319
  V.beforeAll(
245
320
  () => runPromise(Effect.asVoid(contextEffect)),
246
- options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined
321
+ hookTimeout(options?.timeout)
247
322
  )
248
323
  V.afterAll(
249
- () => runPromise(Scope.close(scope, Exit.void)),
250
- options?.timeout ? Duration.toMillis(Duration.fromInputUnsafe(options.timeout)) : undefined
324
+ () => closeScope(),
325
+ hookTimeout(options?.timeout)
251
326
  )
252
327
  return args[1](makeIt(V.it))
253
328
  })
@@ -278,7 +353,7 @@ export const flakyTest = <A, E, R>(
278
353
 
279
354
  /** @internal */
280
355
  export const makeMethods = (it: V.TestAPI): Vitest.Vitest.Methods =>
281
- Object.assign(it, {
356
+ makeItProxy(it, {
282
357
  effect: makeTester<Scope.Scope>(flow(Effect.scoped, Effect.provide(TestEnv)), it),
283
358
  live: makeTester<Scope.Scope>(Effect.scoped, it),
284
359
  flakyTest,
package/src/utils.ts CHANGED
@@ -1,4 +1,18 @@
1
1
  /**
2
+ * Assertion utilities for `@effect/vitest` test suites.
3
+ *
4
+ * This module collects small assertion helpers for common Effect testing
5
+ * scenarios: Node-style equality checks, `Equal.equals` comparisons, string
6
+ * matching, thrown error validation, and focused assertions for `Option`,
7
+ * `Result`, and `Exit` values. They are intended to be imported as `assert`
8
+ * helpers from `@effect/vitest` and used in both regular Vitest tests and
9
+ * `it.effect` tests after the value under test has already been produced.
10
+ *
11
+ * These helpers throw assertion errors synchronously; they do not run Effects,
12
+ * provide services, or advance test environments such as `TestClock`. In
13
+ * Effect-based tests, yield the effect first and then assert on the resulting
14
+ * value so failures are reported through the surrounding Vitest test.
15
+ *
2
16
  * @since 4.0.0
3
17
  */
4
18
  import type * as Cause from "effect/Cause"
@@ -24,7 +38,7 @@ export function fail(message: string) {
24
38
  }
25
39
 
26
40
  /**
27
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
41
+ * Asserts that `actual` is deeply strictly equal to `expected` using Node's `assert.deepStrictEqual`.
28
42
  *
29
43
  * @since 4.0.0
30
44
  */
@@ -33,7 +47,7 @@ export function deepStrictEqual<A>(actual: A, expected: A, message?: string, ...
33
47
  }
34
48
 
35
49
  /**
36
- * Asserts that `actual` is not equal to `expected` using the `Equal.equals` trait.
50
+ * Asserts that `actual` is not deeply strictly equal to `expected` using Node's `assert.notDeepStrictEqual`.
37
51
  *
38
52
  * @since 4.0.0
39
53
  */
@@ -42,7 +56,7 @@ export function notDeepStrictEqual<A>(actual: A, expected: A, message?: string,
42
56
  }
43
57
 
44
58
  /**
45
- * Asserts that `actual` is equal to `expected` using the `Equal.equals` trait.
59
+ * Asserts that `actual` is strictly equal to `expected` using Node's `assert.strictEqual`.
46
60
  *
47
61
  * @since 4.0.0
48
62
  */
@@ -132,7 +146,7 @@ export function assertMatch(actual: string, regExp: RegExp, ..._: Array<never>)
132
146
  }
133
147
 
134
148
  /**
135
- * Asserts that `thunk` throws an error.
149
+ * Asserts that `thunk` throws, optionally checking the thrown value against an expected `Error` or validation function.
136
150
  *
137
151
  * @since 4.0.0
138
152
  */
@@ -154,7 +168,7 @@ export function throws(thunk: () => void, error?: Error | ((u: unknown) => undef
154
168
  }
155
169
 
156
170
  /**
157
- * Asserts that `thunk` throws an error.
171
+ * Asserts that `thunk` throws or returns a rejected promise, optionally checking the failure value against an expected `Error` or validation function.
158
172
  *
159
173
  * @since 4.0.0
160
174
  */
@@ -219,7 +233,7 @@ export function assertUndefined<A>(
219
233
  }
220
234
 
221
235
  /**
222
- * Asserts that `option` is `Some`.
236
+ * Asserts that `option` is `Some` and contains a value equal to `expected`.
223
237
  *
224
238
  * @since 4.0.0
225
239
  */
@@ -236,7 +250,7 @@ export function assertSome<A>(
236
250
  // ----------------------------
237
251
 
238
252
  /**
239
- * Asserts that `result` is `Success`.
253
+ * Asserts that `result` is `Success` and contains a value equal to `expected`.
240
254
  *
241
255
  * @since 4.0.0
242
256
  */
@@ -249,7 +263,7 @@ export function assertSuccess<A, E>(
249
263
  }
250
264
 
251
265
  /**
252
- * Asserts that `result` is `Failure`.
266
+ * Asserts that `result` is `Failure` and contains an error equal to `expected`.
253
267
  *
254
268
  * @since 4.0.0
255
269
  */
@@ -266,7 +280,7 @@ export function assertFailure<A, E>(
266
280
  // ----------------------------
267
281
 
268
282
  /**
269
- * Asserts that `exit` is a failure.
283
+ * Asserts that `exit` is a failure with a cause equal to `expected`.
270
284
  *
271
285
  * @since 4.0.0
272
286
  */
@@ -279,7 +293,7 @@ export function assertExitFailure<A, E>(
279
293
  }
280
294
 
281
295
  /**
282
- * Asserts that `exit` is a success.
296
+ * Asserts that `exit` is a success with a value equal to `expected`.
283
297
  *
284
298
  * @since 4.0.0
285
299
  */