@effect/vitest 4.0.0-beta.70 → 4.0.0-beta.71
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/utils.d.ts +28 -13
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/package.json +3 -3
- package/src/utils.ts +26 -11
package/dist/utils.d.ts
CHANGED
|
@@ -1,17 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Assertion
|
|
3
|
-
*
|
|
4
|
-
* This module
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
2
|
+
* Assertion helpers used by `@effect/vitest` tests.
|
|
3
|
+
*
|
|
4
|
+
* This module extends Node and Vitest assertions with Effect-aware checks for
|
|
5
|
+
* values commonly returned by the library: `Option`, `Result`, and `Exit`. The
|
|
6
|
+
* helpers are synchronous assertions except `throwsAsync`, and are intended to
|
|
7
|
+
* be used after a test has already produced the value to inspect.
|
|
8
|
+
*
|
|
9
|
+
* **Mental model**
|
|
10
|
+
*
|
|
11
|
+
* `@effect/vitest` supplies the test runner integration, while this module
|
|
12
|
+
* supplies small value-level assertions. Use `it.effect` to run Effects and
|
|
13
|
+
* then call these helpers on yielded results; use ordinary Vitest tests for pure
|
|
14
|
+
* synchronous code.
|
|
15
|
+
*
|
|
16
|
+
* **Common tasks**
|
|
17
|
+
*
|
|
18
|
+
* Use `assertEquals` when equality should follow Effect's `Equal` trait, Node
|
|
19
|
+
* `strictEqual` or `deepStrictEqual` for JavaScript equality, `assertSome` and
|
|
20
|
+
* `assertNone` for `Option`, `assertSuccess` and `assertFailure` for `Result`,
|
|
21
|
+
* and `assertExitSuccess` or `assertExitFailure` when an Effect has been run to
|
|
22
|
+
* an `Exit`.
|
|
23
|
+
*
|
|
24
|
+
* **Gotchas**
|
|
25
|
+
*
|
|
26
|
+
* These helpers throw assertion errors; they do not run Effects, provide test
|
|
27
|
+
* services, or advance `TestClock`. Failed `assertEquals` checks first delegate
|
|
28
|
+
* to `deepStrictEqual` so Vitest can show a structural diff before reporting the
|
|
29
|
+
* `Equal.equals` mismatch.
|
|
15
30
|
*
|
|
16
31
|
* @since 4.0.0
|
|
17
32
|
*/
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
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":"
|
|
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.
|
|
3
|
+
"version": "4.0.0-beta.71",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "A set of helpers for testing Effects with vitest",
|
|
@@ -34,13 +34,13 @@
|
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"vitest": "^3.0.0 || ^4.0.0",
|
|
37
|
-
"effect": "^4.0.0-beta.
|
|
37
|
+
"effect": "^4.0.0-beta.71"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@types/node": "^25.7.0",
|
|
41
41
|
"@vitest/runner": "4.1.4",
|
|
42
42
|
"vitest": "4.1.4",
|
|
43
|
-
"effect": "^4.0.0-beta.
|
|
43
|
+
"effect": "^4.0.0-beta.71"
|
|
44
44
|
},
|
|
45
45
|
"scripts": {
|
|
46
46
|
"build": "tsc -b tsconfig.json && pnpm babel",
|
package/src/utils.ts
CHANGED
|
@@ -1,17 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Assertion
|
|
2
|
+
* Assertion helpers used by `@effect/vitest` tests.
|
|
3
3
|
*
|
|
4
|
-
* This module
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
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.
|
|
4
|
+
* This module extends Node and Vitest assertions with Effect-aware checks for
|
|
5
|
+
* values commonly returned by the library: `Option`, `Result`, and `Exit`. The
|
|
6
|
+
* helpers are synchronous assertions except `throwsAsync`, and are intended to
|
|
7
|
+
* be used after a test has already produced the value to inspect.
|
|
10
8
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
9
|
+
* **Mental model**
|
|
10
|
+
*
|
|
11
|
+
* `@effect/vitest` supplies the test runner integration, while this module
|
|
12
|
+
* supplies small value-level assertions. Use `it.effect` to run Effects and
|
|
13
|
+
* then call these helpers on yielded results; use ordinary Vitest tests for pure
|
|
14
|
+
* synchronous code.
|
|
15
|
+
*
|
|
16
|
+
* **Common tasks**
|
|
17
|
+
*
|
|
18
|
+
* Use `assertEquals` when equality should follow Effect's `Equal` trait, Node
|
|
19
|
+
* `strictEqual` or `deepStrictEqual` for JavaScript equality, `assertSome` and
|
|
20
|
+
* `assertNone` for `Option`, `assertSuccess` and `assertFailure` for `Result`,
|
|
21
|
+
* and `assertExitSuccess` or `assertExitFailure` when an Effect has been run to
|
|
22
|
+
* an `Exit`.
|
|
23
|
+
*
|
|
24
|
+
* **Gotchas**
|
|
25
|
+
*
|
|
26
|
+
* These helpers throw assertion errors; they do not run Effects, provide test
|
|
27
|
+
* services, or advance `TestClock`. Failed `assertEquals` checks first delegate
|
|
28
|
+
* to `deepStrictEqual` so Vitest can show a structural diff before reporting the
|
|
29
|
+
* `Equal.equals` mismatch.
|
|
15
30
|
*
|
|
16
31
|
* @since 4.0.0
|
|
17
32
|
*/
|