effect 4.0.0-beta.29 → 4.0.0-beta.30

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.
Files changed (63) hide show
  1. package/dist/Effect.d.ts +18 -5
  2. package/dist/Effect.d.ts.map +1 -1
  3. package/dist/Effect.js +12 -5
  4. package/dist/Effect.js.map +1 -1
  5. package/dist/Option.d.ts +1 -1
  6. package/dist/Option.d.ts.map +1 -1
  7. package/dist/Option.js +1 -2
  8. package/dist/Option.js.map +1 -1
  9. package/dist/Result.d.ts +1 -1
  10. package/dist/Result.d.ts.map +1 -1
  11. package/dist/Result.js +1 -2
  12. package/dist/Result.js.map +1 -1
  13. package/dist/Schema.d.ts +7 -6
  14. package/dist/Schema.d.ts.map +1 -1
  15. package/dist/Schema.js.map +1 -1
  16. package/dist/ServiceMap.d.ts +1 -1
  17. package/dist/ServiceMap.d.ts.map +1 -1
  18. package/dist/ServiceMap.js.map +1 -1
  19. package/dist/Utils.d.ts +137 -65
  20. package/dist/Utils.d.ts.map +1 -1
  21. package/dist/Utils.js +38 -66
  22. package/dist/Utils.js.map +1 -1
  23. package/dist/index.d.ts +56 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +56 -0
  26. package/dist/index.js.map +1 -1
  27. package/dist/internal/effect.js +4 -4
  28. package/dist/internal/effect.js.map +1 -1
  29. package/dist/testing/TestSchema.d.ts +258 -24
  30. package/dist/testing/TestSchema.d.ts.map +1 -1
  31. package/dist/testing/TestSchema.js +296 -23
  32. package/dist/testing/TestSchema.js.map +1 -1
  33. package/dist/testing/index.d.ts +64 -1
  34. package/dist/testing/index.d.ts.map +1 -1
  35. package/dist/testing/index.js +64 -1
  36. package/dist/testing/index.js.map +1 -1
  37. package/dist/unstable/cli/Command.d.ts +3 -3
  38. package/dist/unstable/cli/Command.d.ts.map +1 -1
  39. package/dist/unstable/http/HttpClient.js +3 -0
  40. package/dist/unstable/http/HttpClient.js.map +1 -1
  41. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  42. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  43. package/dist/unstable/http/HttpClientResponse.js +4 -0
  44. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  45. package/dist/unstable/http/HttpServerResponse.d.ts +1 -1
  46. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  47. package/dist/unstable/http/HttpServerResponse.js +4 -0
  48. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  49. package/package.json +1 -1
  50. package/src/Effect.ts +18 -5
  51. package/src/Option.ts +2 -4
  52. package/src/Result.ts +2 -4
  53. package/src/Schema.ts +13 -6
  54. package/src/ServiceMap.ts +2 -2
  55. package/src/Utils.ts +137 -111
  56. package/src/index.ts +56 -0
  57. package/src/internal/effect.ts +20 -4
  58. package/src/testing/TestSchema.ts +322 -25
  59. package/src/testing/index.ts +64 -1
  60. package/src/unstable/cli/Command.ts +3 -3
  61. package/src/unstable/http/HttpClient.ts +5 -1
  62. package/src/unstable/http/HttpClientResponse.ts +7 -2
  63. package/src/unstable/http/HttpServerResponse.ts +6 -2
@@ -5,18 +5,61 @@ import type * as Issue from "../SchemaIssue.ts";
5
5
  import type * as ServiceMap from "../ServiceMap.ts";
6
6
  import * as FastCheck from "../testing/FastCheck.ts";
7
7
  /**
8
- * The `Asserts` class provides a comprehensive testing framework for schema validation,
9
- * encoding/decoding operations, and property-based testing.
8
+ * Entry point for schema test assertions. Wraps a schema and exposes
9
+ * operation-specific helpers: {@link Decoding}, {@link Encoding}, make,
10
+ * arbitrary generation, and round-trip verification.
11
+ *
12
+ * When to use:
13
+ * - You are writing unit tests for a schema's decoding, encoding, or
14
+ * construction behavior.
15
+ * - You want property-based round-trip or generation checks.
16
+ *
17
+ * **Example** (Decoding and encoding a struct)
18
+ *
19
+ * ```ts
20
+ * import { Schema } from "effect"
21
+ * import { TestSchema } from "effect/testing"
22
+ *
23
+ * const schema = Schema.Struct({ name: Schema.String })
24
+ * const asserts = new TestSchema.Asserts(schema)
25
+ *
26
+ * // decoding
27
+ * await asserts.decoding().succeed({ name: "Alice" })
28
+ *
29
+ * // encoding
30
+ * await asserts.encoding().succeed({ name: "Alice" })
31
+ * ```
32
+ *
33
+ * @see {@link Decoding}
34
+ * @see {@link Encoding}
10
35
  *
11
36
  * @since 4.0.0
12
37
  */
13
38
  export declare class Asserts<S extends Schema.Top> {
39
+ /**
40
+ * Static helpers for comparing schema AST structures. Useful when you need
41
+ * to assert that two field or element definitions produce the same AST.
42
+ *
43
+ * - `ast.fields.equals(a, b)` – compares struct field ASTs via
44
+ * `assert.deepStrictEqual`.
45
+ * - `ast.elements.equals(a, b)` – compares tuple element ASTs via
46
+ * `assert.deepStrictEqual`.
47
+ *
48
+ * **Example** (Comparing struct fields)
49
+ *
50
+ * ```ts
51
+ * import { Schema } from "effect"
52
+ * import { TestSchema } from "effect/testing"
53
+ *
54
+ * const fieldsA = { name: Schema.String }
55
+ * const fieldsB = { name: Schema.String }
56
+ * TestSchema.Asserts.ast.fields.equals(fieldsA, fieldsB) // no error
57
+ * ```
58
+ */
14
59
  static ast: {
15
- /** Asserts that two struct field definitions are equal by comparing their AST representations. */
16
60
  readonly fields: {
17
61
  readonly equals: (a: Schema.Struct.Fields, b: Schema.Struct.Fields) => void;
18
62
  };
19
- /** Asserts that two tuple element definitions are equal by comparing their AST representations. */
20
63
  readonly elements: {
21
64
  readonly equals: (a: Schema.Tuple.Elements, b: Schema.Tuple.Elements) => void;
22
65
  };
@@ -24,50 +67,154 @@ export declare class Asserts<S extends Schema.Top> {
24
67
  readonly schema: S;
25
68
  constructor(schema: S);
26
69
  /**
27
- * Provides make operation testing utilities.
70
+ * Returns an object with `succeed` and `fail` helpers for testing the
71
+ * schema's `make` operation.
72
+ *
73
+ * - `succeed(input)` – asserts make returns the input unchanged.
74
+ * - `succeed(input, expected)` – asserts make returns `expected`.
75
+ * - `fail(input, message)` – asserts make fails with `message`.
76
+ *
77
+ * **Example** (Testing make)
78
+ *
79
+ * ```ts
80
+ * import { Schema } from "effect"
81
+ * import { TestSchema } from "effect/testing"
82
+ *
83
+ * const schema = Schema.String
84
+ * const asserts = new TestSchema.Asserts(schema)
85
+ * await asserts.make().succeed("hello")
86
+ * ```
28
87
  */
29
88
  make(options?: Schema.MakeOptions): {
30
89
  succeed: {
31
90
  (input: S["Type"]): Promise<void>;
32
91
  (input: S["~type.make.in"], expected: S["Type"]): Promise<void>;
33
92
  };
34
- /**
35
- * Asserts that make operation fails with the expected error message.
36
- */
37
93
  fail(input: unknown, message: string): Promise<void>;
38
94
  };
39
95
  /**
40
- * Verifies that encoding values produces the same type after decoding (round-trip).
96
+ * Runs a property-based test that encodes arbitrary values and then decodes
97
+ * them, asserting the decoded value equals the original. Useful for verifying
98
+ * that a codec is lossless (encode followed by decode is identity).
99
+ *
100
+ * - Uses FastCheck to generate arbitrary values matching the schema's Type.
101
+ * - Fails the test if any generated value does not round-trip.
102
+ * - Pass `options.params` to control FastCheck parameters (e.g. `numRuns`).
103
+ *
104
+ * **Example** (Round-trip verification)
105
+ *
106
+ * ```ts
107
+ * import { Schema } from "effect"
108
+ * import { TestSchema } from "effect/testing"
109
+ *
110
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
111
+ * await asserts.verifyLosslessTransformation()
112
+ * ```
41
113
  */
42
114
  verifyLosslessTransformation<S extends Schema.Codec<unknown, unknown>>(this: Asserts<S>, options?: {
43
115
  readonly params?: FastCheck.Parameters<[S["Type"]]>;
44
116
  }): Promise<void>;
45
117
  /**
46
- * Provides decoding testing utilities.
118
+ * Returns a {@link Decoding} instance for this schema, providing `succeed`
119
+ * and `fail` helpers to test decoding behavior.
120
+ *
121
+ * - Pass `parseOptions` to control error reporting (e.g. `{ errors: "all" }`).
122
+ *
123
+ * **Example** (Decoding assertions)
124
+ *
125
+ * ```ts
126
+ * import { Schema } from "effect"
127
+ * import { TestSchema } from "effect/testing"
128
+ *
129
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
130
+ * const decoding = asserts.decoding()
131
+ * await decoding.succeed("42", 42)
132
+ * await decoding.fail(null, "Expected string, got null")
133
+ * ```
134
+ *
135
+ * @see {@link Decoding}
47
136
  */
48
137
  decoding(options?: {
49
138
  readonly parseOptions?: AST.ParseOptions | undefined;
50
139
  }): Decoding<S>;
51
140
  /**
52
- * Provides encoding testing utilities.
141
+ * Returns an {@link Encoding} instance for this schema, providing `succeed`
142
+ * and `fail` helpers to test encoding behavior.
143
+ *
144
+ * - Pass `parseOptions` to control error reporting (e.g. `{ errors: "all" }`).
145
+ *
146
+ * **Example** (Encoding assertions)
147
+ *
148
+ * ```ts
149
+ * import { Schema } from "effect"
150
+ * import { TestSchema } from "effect/testing"
151
+ *
152
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
153
+ * const encoding = asserts.encoding()
154
+ * await encoding.succeed(42, "42")
155
+ * ```
156
+ *
157
+ * @see {@link Encoding}
53
158
  */
54
159
  encoding(options?: {
55
160
  readonly parseOptions?: AST.ParseOptions | undefined;
56
161
  }): Encoding<S>;
57
162
  /**
58
- * Provides property-based testing utilities for schema validation.
163
+ * Returns an object with property-based testing helpers for the schema's
164
+ * arbitrary generator.
165
+ *
166
+ * - `verifyGeneration()` – generates arbitrary values and asserts each
167
+ * satisfies the schema's `is` predicate. Defaults to 20 runs.
168
+ * - Pass `options.params` to override FastCheck parameters.
169
+ *
170
+ * **Example** (Verifying arbitrary generation)
171
+ *
172
+ * ```ts
173
+ * import { Schema } from "effect"
174
+ * import { TestSchema } from "effect/testing"
175
+ *
176
+ * const asserts = new TestSchema.Asserts(Schema.String)
177
+ * asserts.arbitrary().verifyGeneration()
178
+ * ```
59
179
  */
60
180
  arbitrary<S extends Schema.Codec<unknown, unknown, never, unknown>>(this: Asserts<S>): {
61
- /**
62
- * Verifies that the schema generates valid arbitrary values that satisfy
63
- * the schema constraints.
64
- */
65
181
  verifyGeneration(options?: {
66
182
  readonly params?: FastCheck.Parameters<[S["Type"]]> | undefined;
67
183
  }): void;
68
184
  };
69
185
  }
70
186
  /**
187
+ * Decoding test helper. Wraps a schema and exposes `succeed` and `fail`
188
+ * methods that run the schema's decoder and compare the result.
189
+ *
190
+ * When to use:
191
+ * - You want to assert that specific inputs decode to expected values.
192
+ * - You want to assert that invalid inputs produce specific error messages.
193
+ * - You need to provide services required by the schema's decoding pipeline.
194
+ *
195
+ * Behavior:
196
+ * - All assertions are async and use `assert.deepStrictEqual` internally.
197
+ * - `succeed(input)` asserts the decoded output equals `input` (identity).
198
+ * - `succeed(input, expected)` asserts the decoded output equals `expected`.
199
+ * - `fail(input, message)` asserts decoding fails and the stringified issue
200
+ * equals `message`.
201
+ * - `provide(key, impl)` returns a new `Decoding` with the service injected
202
+ * into the decoding context.
203
+ *
204
+ * **Example** (Decoding with service provision)
205
+ *
206
+ * ```ts
207
+ * import { Schema } from "effect"
208
+ * import { TestSchema } from "effect/testing"
209
+ *
210
+ * const asserts = new TestSchema.Asserts(Schema.String)
211
+ * const decoding = asserts.decoding()
212
+ * await decoding.succeed("hello")
213
+ * ```
214
+ *
215
+ * @see {@link Asserts}
216
+ * @see {@link Encoding}
217
+ *
71
218
  * @since 4.0.0
72
219
  */
73
220
  export declare class Decoding<S extends Schema.Top> {
@@ -80,21 +227,80 @@ export declare class Decoding<S extends Schema.Top> {
80
227
  readonly parseOptions?: AST.ParseOptions | undefined;
81
228
  });
82
229
  /**
83
- * Asserts that decoding succeeds with the expected value.
230
+ * Asserts that decoding `input` succeeds. With one argument, asserts the
231
+ * output equals the input. With two arguments, asserts the output equals
232
+ * `expected`.
233
+ *
234
+ * **Example** (Identity and transformed decoding)
235
+ *
236
+ * ```ts
237
+ * import { Schema } from "effect"
238
+ * import { TestSchema } from "effect/testing"
239
+ *
240
+ * const decoding = new TestSchema.Asserts(Schema.NumberFromString).decoding()
241
+ * await decoding.succeed("1", 1) // transformed
242
+ * ```
84
243
  */
85
244
  succeed<S extends Schema.Decoder<unknown, never>>(this: Decoding<S>, input: unknown): Promise<void>;
86
245
  succeed<S extends Schema.Decoder<unknown, never>>(this: Decoding<S>, input: unknown, expected: S["Type"]): Promise<void>;
87
246
  /**
88
- * Asserts that decoding fails with the expected error message.
247
+ * Asserts that decoding `input` fails and the stringified issue equals
248
+ * `message`.
249
+ *
250
+ * **Example** (Asserting a decoding failure)
251
+ *
252
+ * ```ts
253
+ * import { Schema } from "effect"
254
+ * import { TestSchema } from "effect/testing"
255
+ *
256
+ * const decoding = new TestSchema.Asserts(Schema.String).decoding()
257
+ * await decoding.fail(42, "Expected string, got 42")
258
+ * ```
89
259
  */
90
260
  fail<S extends Schema.Decoder<unknown, never>>(this: Decoding<S>, input: unknown, message: string): Promise<void>;
91
261
  /**
92
- * Creates a new Decoding instance with the provided service available in the
93
- * decoding context.
262
+ * Returns a new {@link Decoding} instance with the given service injected
263
+ * into the decoding effect context. Use this when the schema's decoder
264
+ * requires a service dependency.
265
+ *
266
+ * - Does not mutate the current instance; returns a new one.
267
+ *
268
+ * @see {@link Encoding.provide}
94
269
  */
95
270
  provide<Id, Service>(service: ServiceMap.Key<Id, Service>, implementation: Service): Decoding<Schema.middlewareDecoding<S, Exclude<S["DecodingServices"], Id>>>;
96
271
  }
97
272
  /**
273
+ * Encoding test helper. Mirrors {@link Decoding} but exercises the schema's
274
+ * encoder direction.
275
+ *
276
+ * When to use:
277
+ * - You want to assert that specific values encode to expected outputs.
278
+ * - You want to assert that invalid inputs produce specific error messages
279
+ * during encoding.
280
+ * - You need to provide services required by the schema's encoding pipeline.
281
+ *
282
+ * Behavior:
283
+ * - All assertions are async and use `assert.deepStrictEqual` internally.
284
+ * - `succeed(input)` asserts the encoded output equals `input` (identity).
285
+ * - `succeed(input, expected)` asserts the encoded output equals `expected`.
286
+ * - `fail(input, message)` asserts encoding fails and the stringified issue
287
+ * equals `message`.
288
+ * - `provide(key, impl)` returns a new `Encoding` with the service injected
289
+ * into the encoding context.
290
+ *
291
+ * **Example** (Encoding assertions)
292
+ *
293
+ * ```ts
294
+ * import { Schema } from "effect"
295
+ * import { TestSchema } from "effect/testing"
296
+ *
297
+ * const encoding = new TestSchema.Asserts(Schema.NumberFromString).encoding()
298
+ * await encoding.succeed(42, "42")
299
+ * ```
300
+ *
301
+ * @see {@link Asserts}
302
+ * @see {@link Decoding}
303
+ *
98
304
  * @since 4.0.0
99
305
  */
100
306
  declare class Encoding<S extends Schema.Top> {
@@ -107,17 +313,45 @@ declare class Encoding<S extends Schema.Top> {
107
313
  readonly parseOptions?: AST.ParseOptions | undefined;
108
314
  });
109
315
  /**
110
- * Asserts that encoding succeeds with the expected value.
316
+ * Asserts that encoding `input` succeeds. With one argument, asserts the
317
+ * output equals the input. With two arguments, asserts the output equals
318
+ * `expected`.
319
+ *
320
+ * **Example** (Identity and transformed encoding)
321
+ *
322
+ * ```ts
323
+ * import { Schema } from "effect"
324
+ * import { TestSchema } from "effect/testing"
325
+ *
326
+ * const encoding = new TestSchema.Asserts(Schema.NumberFromString).encoding()
327
+ * await encoding.succeed(1, "1") // transformed
328
+ * ```
111
329
  */
112
330
  succeed<S extends Schema.Encoder<unknown, never>>(this: Encoding<S>, input: unknown): Promise<void>;
113
331
  succeed<S extends Schema.Encoder<unknown, never>>(this: Encoding<S>, input: unknown, expected: S["Encoded"]): Promise<void>;
114
332
  /**
115
- * Asserts that encoding fails with the expected error message.
333
+ * Asserts that encoding `input` fails and the stringified issue equals
334
+ * `message`.
335
+ *
336
+ * **Example** (Asserting an encoding failure)
337
+ *
338
+ * ```ts
339
+ * import { Schema } from "effect"
340
+ * import { TestSchema } from "effect/testing"
341
+ *
342
+ * const encoding = new TestSchema.Asserts(Schema.NumberFromString).encoding()
343
+ * await encoding.fail("not-a-number", "Expected number, got \"not-a-number\"")
344
+ * ```
116
345
  */
117
346
  fail<S extends Schema.Encoder<unknown, never>>(this: Encoding<S>, input: unknown, message: string): Promise<void>;
118
347
  /**
119
- * Creates a new Encoding instance with the provided service available in the
120
- * encoding context.
348
+ * Returns a new {@link Encoding} instance with the given service injected
349
+ * into the encoding effect context. Use this when the schema's encoder
350
+ * requires a service dependency.
351
+ *
352
+ * - Does not mutate the current instance; returns a new one.
353
+ *
354
+ * @see {@link Decoding.provide}
121
355
  */
122
356
  provide<Id, Service>(service: ServiceMap.Key<Id, Service>, implementation: Service): Encoding<Schema.middlewareEncoding<S, Exclude<S["EncodingServices"], Id>>>;
123
357
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TestSchema.d.ts","sourceRoot":"","sources":["../../src/testing/TestSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TestSchema.d.ts","sourceRoot":"","sources":["../../src/testing/TestSchema.ts"],"names":[],"mappings":"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"}