structured-outputs 0.1.0-beta.20 → 0.1.0-beta.21
Sign up to get free protection for your applications and to get access to all the features.
- package/esm/ResponseFormat.d.ts +21 -0
- package/esm/ResponseFormat.d.ts.map +1 -0
- package/esm/ResponseFormat.js +43 -19
- package/esm/ResponseFormat.js.map +1 -1
- package/esm/oai.d.ts +5 -0
- package/esm/oai.d.ts.map +1 -0
- package/esm/oai.js +2 -0
- package/esm/oai.js.map +1 -0
- package/package.json +5 -10
- package/src/ResponseFormat.ts +48 -41
- package/src/oai.ts +5 -0
- package/esm/_dnt.shims.js +0 -58
- package/esm/_dnt.shims.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js +0 -47
- package/esm/deps/jsr.io/@std/assert/1.0.8/almost_equals.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js +0 -47
- package/esm/deps/jsr.io/@std/assert/1.0.8/array_includes.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js +0 -23
- package/esm/deps/jsr.io/@std/assert/1.0.8/assert.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js +0 -31
- package/esm/deps/jsr.io/@std/assert/1.0.8/assertion_error.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js +0 -184
- package/esm/deps/jsr.io/@std/assert/1.0.8/equal.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js +0 -46
- package/esm/deps/jsr.io/@std/assert/1.0.8/equals.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js +0 -28
- package/esm/deps/jsr.io/@std/assert/1.0.8/exists.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js +0 -21
- package/esm/deps/jsr.io/@std/assert/1.0.8/fail.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/false.js +0 -23
- package/esm/deps/jsr.io/@std/assert/1.0.8/false.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js +0 -30
- package/esm/deps/jsr.io/@std/assert/1.0.8/greater.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js +0 -30
- package/esm/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js +0 -53
- package/esm/deps/jsr.io/@std/assert/1.0.8/instance_of.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js +0 -54
- package/esm/deps/jsr.io/@std/assert/1.0.8/is_error.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/less.js +0 -29
- package/esm/deps/jsr.io/@std/assert/1.0.8/less.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js +0 -30
- package/esm/deps/jsr.io/@std/assert/1.0.8/less_or_equal.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/match.js +0 -27
- package/esm/deps/jsr.io/@std/assert/1.0.8/match.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js +0 -46
- package/esm/deps/jsr.io/@std/assert/1.0.8/mod.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js +0 -33
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_equals.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js +0 -30
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_instance_of.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js +0 -27
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_match.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js +0 -33
- package/esm/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js +0 -160
- package/esm/deps/jsr.io/@std/assert/1.0.8/object_match.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js +0 -54
- package/esm/deps/jsr.io/@std/assert/1.0.8/rejects.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js +0 -58
- package/esm/deps/jsr.io/@std/assert/1.0.8/strict_equals.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js +0 -27
- package/esm/deps/jsr.io/@std/assert/1.0.8/string_includes.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js +0 -45
- package/esm/deps/jsr.io/@std/assert/1.0.8/throws.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js +0 -21
- package/esm/deps/jsr.io/@std/assert/1.0.8/unimplemented.js.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js +0 -21
- package/esm/deps/jsr.io/@std/assert/1.0.8/unreachable.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js +0 -111
- package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js +0 -277
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js +0 -180
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/format.js +0 -38
- package/esm/deps/jsr.io/@std/internal/1.0.5/format.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js +0 -208
- package/esm/deps/jsr.io/@std/internal/1.0.5/styles.js.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/types.js +0 -3
- package/esm/deps/jsr.io/@std/internal/1.0.5/types.js.map +0 -1
- package/src/_dnt.shims.ts +0 -60
- package/src/deps/jsr.io/@std/assert/1.0.8/almost_equals.ts +0 -55
- package/src/deps/jsr.io/@std/assert/1.0.8/array_includes.ts +0 -57
- package/src/deps/jsr.io/@std/assert/1.0.8/assert.ts +0 -23
- package/src/deps/jsr.io/@std/assert/1.0.8/assertion_error.ts +0 -31
- package/src/deps/jsr.io/@std/assert/1.0.8/equal.ts +0 -210
- package/src/deps/jsr.io/@std/assert/1.0.8/equals.ts +0 -52
- package/src/deps/jsr.io/@std/assert/1.0.8/exists.ts +0 -31
- package/src/deps/jsr.io/@std/assert/1.0.8/fail.ts +0 -21
- package/src/deps/jsr.io/@std/assert/1.0.8/false.ts +0 -26
- package/src/deps/jsr.io/@std/assert/1.0.8/greater.ts +0 -30
- package/src/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.ts +0 -36
- package/src/deps/jsr.io/@std/assert/1.0.8/instance_of.ts +0 -64
- package/src/deps/jsr.io/@std/assert/1.0.8/is_error.ts +0 -65
- package/src/deps/jsr.io/@std/assert/1.0.8/less.ts +0 -29
- package/src/deps/jsr.io/@std/assert/1.0.8/less_or_equal.ts +0 -36
- package/src/deps/jsr.io/@std/assert/1.0.8/match.ts +0 -30
- package/src/deps/jsr.io/@std/assert/1.0.8/mod.ts +0 -47
- package/src/deps/jsr.io/@std/assert/1.0.8/not_equals.ts +0 -36
- package/src/deps/jsr.io/@std/assert/1.0.8/not_instance_of.ts +0 -33
- package/src/deps/jsr.io/@std/assert/1.0.8/not_match.ts +0 -30
- package/src/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.ts +0 -42
- package/src/deps/jsr.io/@std/assert/1.0.8/object_match.ts +0 -202
- package/src/deps/jsr.io/@std/assert/1.0.8/rejects.ts +0 -123
- package/src/deps/jsr.io/@std/assert/1.0.8/strict_equals.ts +0 -67
- package/src/deps/jsr.io/@std/assert/1.0.8/string_includes.ts +0 -30
- package/src/deps/jsr.io/@std/assert/1.0.8/throws.ts +0 -111
- package/src/deps/jsr.io/@std/assert/1.0.8/unimplemented.ts +0 -21
- package/src/deps/jsr.io/@std/assert/1.0.8/unreachable.ts +0 -21
- package/src/deps/jsr.io/@std/internal/1.0.5/build_message.ts +0 -134
- package/src/deps/jsr.io/@std/internal/1.0.5/diff.ts +0 -317
- package/src/deps/jsr.io/@std/internal/1.0.5/diff_str.ts +0 -204
- package/src/deps/jsr.io/@std/internal/1.0.5/format.ts +0 -39
- package/src/deps/jsr.io/@std/internal/1.0.5/styles.ts +0 -233
- package/src/deps/jsr.io/@std/internal/1.0.5/types.ts +0 -18
- package/types/ResponseFormat.d.ts +0 -26
- package/types/ResponseFormat.d.ts.map +0 -1
- package/types/_dnt.shims.d.ts +0 -2
- package/types/_dnt.shims.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts +0 -29
- package/types/deps/jsr.io/@std/assert/1.0.8/almost_equals.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts +0 -24
- package/types/deps/jsr.io/@std/assert/1.0.8/array_includes.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts +0 -16
- package/types/deps/jsr.io/@std/assert/1.0.8/assert.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts +0 -26
- package/types/deps/jsr.io/@std/assert/1.0.8/assertion_error.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts +0 -17
- package/types/deps/jsr.io/@std/assert/1.0.8/equal.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts +0 -22
- package/types/deps/jsr.io/@std/assert/1.0.8/equals.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts +0 -18
- package/types/deps/jsr.io/@std/assert/1.0.8/exists.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts +0 -15
- package/types/deps/jsr.io/@std/assert/1.0.8/fail.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts +0 -18
- package/types/deps/jsr.io/@std/assert/1.0.8/false.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts +0 -20
- package/types/deps/jsr.io/@std/assert/1.0.8/greater.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts +0 -20
- package/types/deps/jsr.io/@std/assert/1.0.8/greater_or_equal.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts +0 -23
- package/types/deps/jsr.io/@std/assert/1.0.8/instance_of.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts +0 -25
- package/types/deps/jsr.io/@std/assert/1.0.8/is_error.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts +0 -19
- package/types/deps/jsr.io/@std/assert/1.0.8/less.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts +0 -20
- package/types/deps/jsr.io/@std/assert/1.0.8/less_or_equal.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts +0 -18
- package/types/deps/jsr.io/@std/assert/1.0.8/match.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts +0 -44
- package/types/deps/jsr.io/@std/assert/1.0.8/mod.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts +0 -21
- package/types/deps/jsr.io/@std/assert/1.0.8/not_equals.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts +0 -20
- package/types/deps/jsr.io/@std/assert/1.0.8/not_instance_of.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts +0 -18
- package/types/deps/jsr.io/@std/assert/1.0.8/not_match.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts +0 -23
- package/types/deps/jsr.io/@std/assert/1.0.8/not_strict_equals.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts +0 -28
- package/types/deps/jsr.io/@std/assert/1.0.8/object_match.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts +0 -42
- package/types/deps/jsr.io/@std/assert/1.0.8/rejects.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts +0 -24
- package/types/deps/jsr.io/@std/assert/1.0.8/strict_equals.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts +0 -18
- package/types/deps/jsr.io/@std/assert/1.0.8/string_includes.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts +0 -45
- package/types/deps/jsr.io/@std/assert/1.0.8/throws.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts +0 -15
- package/types/deps/jsr.io/@std/assert/1.0.8/unimplemented.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts +0 -15
- package/types/deps/jsr.io/@std/assert/1.0.8/unreachable.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts +0 -82
- package/types/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts +0 -140
- package/types/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts +0 -99
- package/types/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts +0 -2
- package/types/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts +0 -159
- package/types/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts +0 -16
- package/types/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
- /package/{types → esm}/Tool.d.ts +0 -0
- /package/{types → esm}/Tool.d.ts.map +0 -0
- /package/{types → esm}/_dnt.polyfills.d.ts +0 -0
- /package/{types → esm}/_dnt.polyfills.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/_utils.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/aggregate_groups.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/associate_with.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/chunk.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/deep_merge.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/distinct_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_last_while.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/drop_while.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_entries.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_keys.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/filter_values.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/find_single.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/first_not_nullish_of.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/includes_value.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/intersect.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/invert_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/join_to_string.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_entries.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_keys.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_not_nullish.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/map_values.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_of.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/max_with.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_of.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/min_with.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/mod.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/mod.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/omit.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/omit.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/partition_entries.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/permutations.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/pick.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/pick.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/reduce_groups.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/running_reduce.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sample.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sample.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sliding_windows.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sort_by.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/sum_of.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_last_while.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/take_while.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/union.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/union.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/unzip.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/without_all.d.ts.map +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/zip.d.ts +0 -0
- /package/{types → esm}/deps/jsr.io/@std/collections/1.0.9/zip.d.ts.map +0 -0
- /package/{types → esm}/mod.d.ts +0 -0
- /package/{types → esm}/mod.d.ts.map +0 -0
- /package/{types → esm}/types/Ref.d.ts +0 -0
- /package/{types → esm}/types/Ref.d.ts.map +0 -0
- /package/{types → esm}/types/RootTy.d.ts +0 -0
- /package/{types → esm}/types/RootTy.d.ts.map +0 -0
- /package/{types → esm}/types/Ty.d.ts +0 -0
- /package/{types → esm}/types/Ty.d.ts.map +0 -0
- /package/{types → esm}/types/array.d.ts +0 -0
- /package/{types → esm}/types/array.d.ts.map +0 -0
- /package/{types → esm}/types/constant.d.ts +0 -0
- /package/{types → esm}/types/constant.d.ts.map +0 -0
- /package/{types → esm}/types/constantUnion.d.ts +0 -0
- /package/{types → esm}/types/constantUnion.d.ts.map +0 -0
- /package/{types → esm}/types/leaves.d.ts +0 -0
- /package/{types → esm}/types/leaves.d.ts.map +0 -0
- /package/{types → esm}/types/mod.d.ts +0 -0
- /package/{types → esm}/types/mod.d.ts.map +0 -0
- /package/{types → esm}/types/object.d.ts +0 -0
- /package/{types → esm}/types/object.d.ts.map +0 -0
- /package/{types → esm}/types/std/Option.d.ts +0 -0
- /package/{types → esm}/types/std/Option.d.ts.map +0 -0
- /package/{types → esm}/types/std/Wrapper.d.ts +0 -0
- /package/{types → esm}/types/std/Wrapper.d.ts.map +0 -0
- /package/{types → esm}/types/std/mod.d.ts +0 -0
- /package/{types → esm}/types/std/mod.d.ts.map +0 -0
- /package/{types → esm}/types/taggedUnion.d.ts +0 -0
- /package/{types → esm}/types/taggedUnion.d.ts.map +0 -0
- /package/{types → esm}/util/phantoms.d.ts +0 -0
- /package/{types → esm}/util/phantoms.d.ts.map +0 -0
- /package/{types → esm}/util/recombineTaggedTemplateArgs.d.ts +0 -0
- /package/{types → esm}/util/recombineTaggedTemplateArgs.d.ts.map +0 -0
@@ -1,202 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { assertEquals } from "./equals.js";
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Make an assertion that `expected` object is a subset of `actual` object,
|
7
|
-
* deeply. If not, then throw.
|
8
|
-
*
|
9
|
-
* @example Usage
|
10
|
-
* ```ts ignore
|
11
|
-
* import { assertObjectMatch } from "@std/assert";
|
12
|
-
*
|
13
|
-
* assertObjectMatch({ foo: "bar" }, { foo: "bar" }); // Doesn't throw
|
14
|
-
* assertObjectMatch({ foo: "bar" }, { foo: "baz" }); // Throws
|
15
|
-
* assertObjectMatch({ foo: 1, bar: 2 }, { foo: 1 }); // Doesn't throw
|
16
|
-
* assertObjectMatch({ foo: 1 }, { foo: 1, bar: 2 }); // Throws
|
17
|
-
* ```
|
18
|
-
*
|
19
|
-
* @example Usage with nested objects
|
20
|
-
* ```ts ignore
|
21
|
-
* import { assertObjectMatch } from "@std/assert";
|
22
|
-
*
|
23
|
-
* assertObjectMatch({ foo: { bar: 3, baz: 4 } }, { foo: { bar: 3 } }); // Doesn't throw
|
24
|
-
* assertObjectMatch({ foo: { bar: 3 } }, { foo: { bar: 3, baz: 4 } }); // Throws
|
25
|
-
* ```
|
26
|
-
*
|
27
|
-
* @param actual The actual value to be matched.
|
28
|
-
* @param expected The expected value to match.
|
29
|
-
* @param msg The optional message to display if the assertion fails.
|
30
|
-
*/
|
31
|
-
export function assertObjectMatch(
|
32
|
-
// deno-lint-ignore no-explicit-any
|
33
|
-
actual: Record<PropertyKey, any>,
|
34
|
-
expected: Record<PropertyKey, unknown>,
|
35
|
-
msg?: string,
|
36
|
-
): void {
|
37
|
-
return assertEquals(
|
38
|
-
// get the intersection of "actual" and "expected"
|
39
|
-
// side effect: all the instances' constructor field is "Object" now.
|
40
|
-
filter(actual, expected),
|
41
|
-
// set (nested) instances' constructor field to be "Object" without changing expected value.
|
42
|
-
// see https://github.com/denoland/deno_std/pull/1419
|
43
|
-
filter(expected, expected),
|
44
|
-
msg,
|
45
|
-
);
|
46
|
-
}
|
47
|
-
|
48
|
-
type loose = Record<PropertyKey, unknown>;
|
49
|
-
|
50
|
-
function isObject(val: unknown): boolean {
|
51
|
-
return typeof val === "object" && val !== null;
|
52
|
-
}
|
53
|
-
|
54
|
-
function filter(a: loose, b: loose): loose {
|
55
|
-
const seen = new WeakMap();
|
56
|
-
return filterObject(a, b);
|
57
|
-
|
58
|
-
function filterObject(a: loose, b: loose): loose {
|
59
|
-
// Prevent infinite loop with circular references with same filter
|
60
|
-
if ((seen.has(a)) && (seen.get(a) === b)) {
|
61
|
-
return a;
|
62
|
-
}
|
63
|
-
|
64
|
-
try {
|
65
|
-
seen.set(a, b);
|
66
|
-
} catch (err) {
|
67
|
-
if (err instanceof TypeError) {
|
68
|
-
throw new TypeError(
|
69
|
-
`Cannot assertObjectMatch ${a === null ? null : `type ${typeof a}`}`,
|
70
|
-
);
|
71
|
-
}
|
72
|
-
}
|
73
|
-
|
74
|
-
// Filter keys and symbols which are present in both actual and expected
|
75
|
-
const filtered = {} as loose;
|
76
|
-
const keysA = Reflect.ownKeys(a);
|
77
|
-
const keysB = Reflect.ownKeys(b);
|
78
|
-
const entries = keysA.filter((key) => keysB.includes(key))
|
79
|
-
.map((key) => [key, a[key as string]]) as Array<[string, unknown]>;
|
80
|
-
|
81
|
-
if (keysA.length && keysB.length && !entries.length) {
|
82
|
-
// If both objects are not empty but don't have the same keys or symbols,
|
83
|
-
// returns the entries in object a.
|
84
|
-
for (const key of keysA) {
|
85
|
-
filtered[key] = a[key];
|
86
|
-
}
|
87
|
-
|
88
|
-
return filtered;
|
89
|
-
}
|
90
|
-
|
91
|
-
for (const [key, value] of entries) {
|
92
|
-
// On regexp references, keep value as it to avoid loosing pattern and flags
|
93
|
-
if (value instanceof RegExp) {
|
94
|
-
filtered[key] = value;
|
95
|
-
continue;
|
96
|
-
}
|
97
|
-
|
98
|
-
const subset = (b as loose)[key];
|
99
|
-
|
100
|
-
// On array references, build a filtered array and filter nested objects inside
|
101
|
-
if (Array.isArray(value) && Array.isArray(subset)) {
|
102
|
-
filtered[key] = filterArray(value, subset);
|
103
|
-
continue;
|
104
|
-
}
|
105
|
-
|
106
|
-
// On nested objects references, build a filtered object recursively
|
107
|
-
if (isObject(value) && isObject(subset)) {
|
108
|
-
// When both operands are maps, build a filtered map with common keys and filter nested objects inside
|
109
|
-
if ((value instanceof Map) && (subset instanceof Map)) {
|
110
|
-
filtered[key] = new Map(
|
111
|
-
[...value].filter(([k]) => subset.has(k)).map(
|
112
|
-
([k, v]) => {
|
113
|
-
const v2 = subset.get(k);
|
114
|
-
if (isObject(v) && isObject(v2)) {
|
115
|
-
return [k, filterObject(v as loose, v2 as loose)];
|
116
|
-
}
|
117
|
-
|
118
|
-
return [k, v];
|
119
|
-
},
|
120
|
-
),
|
121
|
-
);
|
122
|
-
continue;
|
123
|
-
}
|
124
|
-
|
125
|
-
// When both operands are set, build a filtered set with common values
|
126
|
-
if ((value instanceof Set) && (subset instanceof Set)) {
|
127
|
-
filtered[key] = value.intersection(subset);
|
128
|
-
continue;
|
129
|
-
}
|
130
|
-
|
131
|
-
filtered[key] = filterObject(value as loose, subset as loose);
|
132
|
-
continue;
|
133
|
-
}
|
134
|
-
|
135
|
-
filtered[key] = value;
|
136
|
-
}
|
137
|
-
|
138
|
-
return filtered;
|
139
|
-
}
|
140
|
-
|
141
|
-
function filterArray(a: unknown[], b: unknown[]): unknown[] {
|
142
|
-
// Prevent infinite loop with circular references with same filter
|
143
|
-
if (seen.has(a) && (seen.get(a) === b)) {
|
144
|
-
return a;
|
145
|
-
}
|
146
|
-
|
147
|
-
seen.set(a, b);
|
148
|
-
|
149
|
-
const filtered: unknown[] = [];
|
150
|
-
const count = Math.min(a.length, b.length);
|
151
|
-
|
152
|
-
for (let i = 0; i < count; ++i) {
|
153
|
-
const value = a[i];
|
154
|
-
const subset = b[i];
|
155
|
-
|
156
|
-
// On regexp references, keep value as it to avoid loosing pattern and flags
|
157
|
-
if (value instanceof RegExp) {
|
158
|
-
filtered.push(value);
|
159
|
-
continue;
|
160
|
-
}
|
161
|
-
|
162
|
-
// On array references, build a filtered array and filter nested objects inside
|
163
|
-
if (Array.isArray(value) && Array.isArray(subset)) {
|
164
|
-
filtered.push(filterArray(value, subset));
|
165
|
-
continue;
|
166
|
-
}
|
167
|
-
|
168
|
-
// On nested objects references, build a filtered object recursively
|
169
|
-
if (isObject(value) && isObject(subset)) {
|
170
|
-
// When both operands are maps, build a filtered map with common keys and filter nested objects inside
|
171
|
-
if ((value instanceof Map) && (subset instanceof Map)) {
|
172
|
-
const map = new Map(
|
173
|
-
[...value].filter(([k]) => subset.has(k))
|
174
|
-
.map(([k, v]) => {
|
175
|
-
const v2 = subset.get(k);
|
176
|
-
if (isObject(v) && isObject(v2)) {
|
177
|
-
return [k, filterObject(v as loose, v2 as loose)];
|
178
|
-
}
|
179
|
-
|
180
|
-
return [k, v];
|
181
|
-
}),
|
182
|
-
);
|
183
|
-
filtered.push(map);
|
184
|
-
continue;
|
185
|
-
}
|
186
|
-
|
187
|
-
// When both operands are set, build a filtered set with common values
|
188
|
-
if ((value instanceof Set) && (subset instanceof Set)) {
|
189
|
-
filtered.push(value.intersection(subset));
|
190
|
-
continue;
|
191
|
-
}
|
192
|
-
|
193
|
-
filtered.push(filterObject(value as loose, subset as loose));
|
194
|
-
continue;
|
195
|
-
}
|
196
|
-
|
197
|
-
filtered.push(value);
|
198
|
-
}
|
199
|
-
|
200
|
-
return filtered;
|
201
|
-
}
|
202
|
-
}
|
@@ -1,123 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { AssertionError } from "./assertion_error.js";
|
4
|
-
import { assertIsError } from "./is_error.js";
|
5
|
-
|
6
|
-
/**
|
7
|
-
* Executes a function which returns a promise, expecting it to reject.
|
8
|
-
*
|
9
|
-
* To assert that a synchronous function throws, use {@linkcode assertThrows}.
|
10
|
-
*
|
11
|
-
* @example Usage
|
12
|
-
* ```ts ignore
|
13
|
-
* import { assertRejects } from "@std/assert";
|
14
|
-
*
|
15
|
-
* await assertRejects(async () => Promise.reject(new Error())); // Doesn't throw
|
16
|
-
* await assertRejects(async () => console.log("Hello world")); // Throws
|
17
|
-
* ```
|
18
|
-
*
|
19
|
-
* @param fn The function to execute.
|
20
|
-
* @param msg The optional message to display if the assertion fails.
|
21
|
-
* @returns The promise which resolves to the thrown error.
|
22
|
-
*/
|
23
|
-
export function assertRejects(
|
24
|
-
fn: () => PromiseLike<unknown>,
|
25
|
-
msg?: string,
|
26
|
-
): Promise<unknown>;
|
27
|
-
/**
|
28
|
-
* Executes a function which returns a promise, expecting it to reject.
|
29
|
-
* If it does not, then it throws. An error class and a string that should be
|
30
|
-
* included in the error message can also be asserted.
|
31
|
-
*
|
32
|
-
* To assert that a synchronous function throws, use {@linkcode assertThrows}.
|
33
|
-
*
|
34
|
-
* @example Usage
|
35
|
-
* ```ts ignore
|
36
|
-
* import { assertRejects } from "@std/assert";
|
37
|
-
*
|
38
|
-
* await assertRejects(async () => Promise.reject(new Error()), Error); // Doesn't throw
|
39
|
-
* await assertRejects(async () => Promise.reject(new Error()), SyntaxError); // Throws
|
40
|
-
* ```
|
41
|
-
*
|
42
|
-
* @typeParam E The error class to assert.
|
43
|
-
* @param fn The function to execute.
|
44
|
-
* @param ErrorClass The error class to assert.
|
45
|
-
* @param msgIncludes The string that should be included in the error message.
|
46
|
-
* @param msg The optional message to display if the assertion fails.
|
47
|
-
* @returns The promise which resolves to the thrown error.
|
48
|
-
*/
|
49
|
-
export function assertRejects<E extends Error = Error>(
|
50
|
-
fn: () => PromiseLike<unknown>,
|
51
|
-
// deno-lint-ignore no-explicit-any
|
52
|
-
ErrorClass: abstract new (...args: any[]) => E,
|
53
|
-
msgIncludes?: string,
|
54
|
-
msg?: string,
|
55
|
-
): Promise<E>;
|
56
|
-
export async function assertRejects<E extends Error = Error>(
|
57
|
-
fn: () => PromiseLike<unknown>,
|
58
|
-
errorClassOrMsg?:
|
59
|
-
// deno-lint-ignore no-explicit-any
|
60
|
-
| (abstract new (...args: any[]) => E)
|
61
|
-
| string,
|
62
|
-
msgIncludesOrMsg?: string,
|
63
|
-
msg?: string,
|
64
|
-
): Promise<E | Error | unknown> {
|
65
|
-
// deno-lint-ignore no-explicit-any
|
66
|
-
let ErrorClass: (abstract new (...args: any[]) => E) | undefined;
|
67
|
-
let msgIncludes: string | undefined;
|
68
|
-
let err;
|
69
|
-
|
70
|
-
if (typeof errorClassOrMsg !== "string") {
|
71
|
-
if (
|
72
|
-
errorClassOrMsg === undefined ||
|
73
|
-
errorClassOrMsg.prototype instanceof Error ||
|
74
|
-
errorClassOrMsg.prototype === Error.prototype
|
75
|
-
) {
|
76
|
-
ErrorClass = errorClassOrMsg;
|
77
|
-
msgIncludes = msgIncludesOrMsg;
|
78
|
-
}
|
79
|
-
} else {
|
80
|
-
msg = errorClassOrMsg;
|
81
|
-
}
|
82
|
-
let doesThrow = false;
|
83
|
-
let isPromiseReturned = false;
|
84
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
85
|
-
try {
|
86
|
-
const possiblePromise = fn();
|
87
|
-
if (
|
88
|
-
possiblePromise &&
|
89
|
-
typeof possiblePromise === "object" &&
|
90
|
-
typeof possiblePromise.then === "function"
|
91
|
-
) {
|
92
|
-
isPromiseReturned = true;
|
93
|
-
await possiblePromise;
|
94
|
-
} else {
|
95
|
-
throw new Error();
|
96
|
-
}
|
97
|
-
} catch (error) {
|
98
|
-
if (!isPromiseReturned) {
|
99
|
-
throw new AssertionError(
|
100
|
-
`Function throws when expected to reject${msgSuffix}`,
|
101
|
-
);
|
102
|
-
}
|
103
|
-
if (ErrorClass) {
|
104
|
-
if (!(error instanceof Error)) {
|
105
|
-
throw new AssertionError(`A non-Error object was rejected${msgSuffix}`);
|
106
|
-
}
|
107
|
-
assertIsError(
|
108
|
-
error,
|
109
|
-
ErrorClass,
|
110
|
-
msgIncludes,
|
111
|
-
msg,
|
112
|
-
);
|
113
|
-
}
|
114
|
-
err = error;
|
115
|
-
doesThrow = true;
|
116
|
-
}
|
117
|
-
if (!doesThrow) {
|
118
|
-
throw new AssertionError(
|
119
|
-
`Expected function to reject${msgSuffix}`,
|
120
|
-
);
|
121
|
-
}
|
122
|
-
return err;
|
123
|
-
}
|
@@ -1,67 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { buildMessage } from "../../internal/1.0.5/build_message.js";
|
4
|
-
import { diff } from "../../internal/1.0.5/diff.js";
|
5
|
-
import { diffStr } from "../../internal/1.0.5/diff_str.js";
|
6
|
-
import { format } from "../../internal/1.0.5/format.js";
|
7
|
-
import { red } from "../../internal/1.0.5/styles.js";
|
8
|
-
import { AssertionError } from "./assertion_error.js";
|
9
|
-
|
10
|
-
/**
|
11
|
-
* Make an assertion that `actual` and `expected` are strictly equal, using
|
12
|
-
* {@linkcode Object.is} for equality comparison. If not, then throw.
|
13
|
-
*
|
14
|
-
* @example Usage
|
15
|
-
* ```ts ignore
|
16
|
-
* import { assertStrictEquals } from "@std/assert";
|
17
|
-
*
|
18
|
-
* const a = {};
|
19
|
-
* const b = a;
|
20
|
-
* assertStrictEquals(a, b); // Doesn't throw
|
21
|
-
*
|
22
|
-
* const c = {};
|
23
|
-
* const d = {};
|
24
|
-
* assertStrictEquals(c, d); // Throws
|
25
|
-
* ```
|
26
|
-
*
|
27
|
-
* @typeParam T The type of the expected value.
|
28
|
-
* @param actual The actual value to compare.
|
29
|
-
* @param expected The expected value to compare.
|
30
|
-
* @param msg The optional message to display if the assertion fails.
|
31
|
-
*/
|
32
|
-
export function assertStrictEquals<T>(
|
33
|
-
actual: unknown,
|
34
|
-
expected: T,
|
35
|
-
msg?: string,
|
36
|
-
): asserts actual is T {
|
37
|
-
if (Object.is(actual, expected)) {
|
38
|
-
return;
|
39
|
-
}
|
40
|
-
|
41
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
42
|
-
let message: string;
|
43
|
-
|
44
|
-
const actualString = format(actual);
|
45
|
-
const expectedString = format(expected);
|
46
|
-
|
47
|
-
if (actualString === expectedString) {
|
48
|
-
const withOffset = actualString
|
49
|
-
.split("\n")
|
50
|
-
.map((l) => ` ${l}`)
|
51
|
-
.join("\n");
|
52
|
-
message =
|
53
|
-
`Values have the same structure but are not reference-equal${msgSuffix}\n\n${
|
54
|
-
red(withOffset)
|
55
|
-
}\n`;
|
56
|
-
} else {
|
57
|
-
const stringDiff = (typeof actual === "string") &&
|
58
|
-
(typeof expected === "string");
|
59
|
-
const diffResult = stringDiff
|
60
|
-
? diffStr(actual as string, expected as string)
|
61
|
-
: diff(actualString.split("\n"), expectedString.split("\n"));
|
62
|
-
const diffMsg = buildMessage(diffResult, { stringDiff }).join("\n");
|
63
|
-
message = `Values are not strictly equal${msgSuffix}\n${diffMsg}`;
|
64
|
-
}
|
65
|
-
|
66
|
-
throw new AssertionError(message);
|
67
|
-
}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { AssertionError } from "./assertion_error.js";
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Make an assertion that actual includes expected. If not
|
7
|
-
* then throw.
|
8
|
-
*
|
9
|
-
* @example Usage
|
10
|
-
* ```ts ignore
|
11
|
-
* import { assertStringIncludes } from "@std/assert";
|
12
|
-
*
|
13
|
-
* assertStringIncludes("Hello", "ello"); // Doesn't throw
|
14
|
-
* assertStringIncludes("Hello", "world"); // Throws
|
15
|
-
* ```
|
16
|
-
*
|
17
|
-
* @param actual The actual string to check for inclusion.
|
18
|
-
* @param expected The expected string to check for inclusion.
|
19
|
-
* @param msg The optional message to display if the assertion fails.
|
20
|
-
*/
|
21
|
-
export function assertStringIncludes(
|
22
|
-
actual: string,
|
23
|
-
expected: string,
|
24
|
-
msg?: string,
|
25
|
-
) {
|
26
|
-
if (actual.includes(expected)) return;
|
27
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
28
|
-
msg = `Expected actual: "${actual}" to contain: "${expected}"${msgSuffix}`;
|
29
|
-
throw new AssertionError(msg);
|
30
|
-
}
|
@@ -1,111 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { assertIsError } from "./is_error.js";
|
4
|
-
import { AssertionError } from "./assertion_error.js";
|
5
|
-
|
6
|
-
/**
|
7
|
-
* Executes a function, expecting it to throw. If it does not, then it
|
8
|
-
* throws.
|
9
|
-
*
|
10
|
-
* To assert that an asynchronous function rejects, use
|
11
|
-
* {@linkcode assertRejects}.
|
12
|
-
*
|
13
|
-
* @example Usage
|
14
|
-
* ```ts ignore
|
15
|
-
* import { assertThrows } from "@std/assert";
|
16
|
-
*
|
17
|
-
* assertThrows(() => { throw new TypeError("hello world!"); }); // Doesn't throw
|
18
|
-
* assertThrows(() => console.log("hello world!")); // Throws
|
19
|
-
* ```
|
20
|
-
*
|
21
|
-
* @param fn The function to execute.
|
22
|
-
* @param msg The optional message to display if the assertion fails.
|
23
|
-
* @returns The error that was thrown.
|
24
|
-
*/
|
25
|
-
export function assertThrows(
|
26
|
-
fn: () => unknown,
|
27
|
-
msg?: string,
|
28
|
-
): unknown;
|
29
|
-
/**
|
30
|
-
* Executes a function, expecting it to throw. If it does not, then it
|
31
|
-
* throws. An error class and a string that should be included in the
|
32
|
-
* error message can also be asserted.
|
33
|
-
*
|
34
|
-
* To assert that an asynchronous function rejects, use
|
35
|
-
* {@linkcode assertRejects}.
|
36
|
-
*
|
37
|
-
* @example Usage
|
38
|
-
* ```ts ignore
|
39
|
-
* import { assertThrows } from "@std/assert";
|
40
|
-
*
|
41
|
-
* assertThrows(() => { throw new TypeError("hello world!"); }, TypeError); // Doesn't throw
|
42
|
-
* assertThrows(() => { throw new TypeError("hello world!"); }, RangeError); // Throws
|
43
|
-
* ```
|
44
|
-
*
|
45
|
-
* @typeParam E The error class to assert.
|
46
|
-
* @param fn The function to execute.
|
47
|
-
* @param ErrorClass The error class to assert.
|
48
|
-
* @param msgIncludes The string that should be included in the error message.
|
49
|
-
* @param msg The optional message to display if the assertion fails.
|
50
|
-
* @returns The error that was thrown.
|
51
|
-
*/
|
52
|
-
export function assertThrows<E extends Error = Error>(
|
53
|
-
fn: () => unknown,
|
54
|
-
// deno-lint-ignore no-explicit-any
|
55
|
-
ErrorClass: abstract new (...args: any[]) => E,
|
56
|
-
msgIncludes?: string,
|
57
|
-
msg?: string,
|
58
|
-
): E;
|
59
|
-
export function assertThrows<E extends Error = Error>(
|
60
|
-
fn: () => unknown,
|
61
|
-
errorClassOrMsg?:
|
62
|
-
// deno-lint-ignore no-explicit-any
|
63
|
-
| (abstract new (...args: any[]) => E)
|
64
|
-
| string,
|
65
|
-
msgIncludesOrMsg?: string,
|
66
|
-
msg?: string,
|
67
|
-
): E | Error | unknown {
|
68
|
-
// deno-lint-ignore no-explicit-any
|
69
|
-
let ErrorClass: (abstract new (...args: any[]) => E) | undefined;
|
70
|
-
let msgIncludes: string | undefined;
|
71
|
-
let err;
|
72
|
-
|
73
|
-
if (typeof errorClassOrMsg !== "string") {
|
74
|
-
if (
|
75
|
-
errorClassOrMsg === undefined ||
|
76
|
-
errorClassOrMsg?.prototype instanceof Error ||
|
77
|
-
errorClassOrMsg?.prototype === Error.prototype
|
78
|
-
) {
|
79
|
-
ErrorClass = errorClassOrMsg;
|
80
|
-
msgIncludes = msgIncludesOrMsg;
|
81
|
-
} else {
|
82
|
-
msg = msgIncludesOrMsg;
|
83
|
-
}
|
84
|
-
} else {
|
85
|
-
msg = errorClassOrMsg;
|
86
|
-
}
|
87
|
-
let doesThrow = false;
|
88
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
89
|
-
try {
|
90
|
-
fn();
|
91
|
-
} catch (error) {
|
92
|
-
if (ErrorClass) {
|
93
|
-
if (error instanceof Error === false) {
|
94
|
-
throw new AssertionError(`A non-Error object was thrown${msgSuffix}`);
|
95
|
-
}
|
96
|
-
assertIsError(
|
97
|
-
error,
|
98
|
-
ErrorClass,
|
99
|
-
msgIncludes,
|
100
|
-
msg,
|
101
|
-
);
|
102
|
-
}
|
103
|
-
err = error;
|
104
|
-
doesThrow = true;
|
105
|
-
}
|
106
|
-
if (!doesThrow) {
|
107
|
-
msg = `Expected function to throw${msgSuffix}`;
|
108
|
-
throw new AssertionError(msg);
|
109
|
-
}
|
110
|
-
return err;
|
111
|
-
}
|
@@ -1,21 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { AssertionError } from "./assertion_error.js";
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Use this to stub out methods that will throw when invoked.
|
7
|
-
*
|
8
|
-
* @example Usage
|
9
|
-
* ```ts ignore
|
10
|
-
* import { unimplemented } from "@std/assert";
|
11
|
-
*
|
12
|
-
* unimplemented(); // Throws
|
13
|
-
* ```
|
14
|
-
*
|
15
|
-
* @param msg Optional message to include in the error.
|
16
|
-
* @returns Never returns, always throws.
|
17
|
-
*/
|
18
|
-
export function unimplemented(msg?: string): never {
|
19
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
20
|
-
throw new AssertionError(`Unimplemented${msgSuffix}`);
|
21
|
-
}
|
@@ -1,21 +0,0 @@
|
|
1
|
-
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2
|
-
// This module is browser compatible.
|
3
|
-
import { AssertionError } from "./assertion_error.js";
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Use this to assert unreachable code.
|
7
|
-
*
|
8
|
-
* @example Usage
|
9
|
-
* ```ts ignore
|
10
|
-
* import { unreachable } from "@std/assert";
|
11
|
-
*
|
12
|
-
* unreachable(); // Throws
|
13
|
-
* ```
|
14
|
-
*
|
15
|
-
* @param msg Optional message to include in the error.
|
16
|
-
* @returns Never returns, always throws.
|
17
|
-
*/
|
18
|
-
export function unreachable(msg?: string): never {
|
19
|
-
const msgSuffix = msg ? `: ${msg}` : ".";
|
20
|
-
throw new AssertionError(`Unreachable${msgSuffix}`);
|
21
|
-
}
|