bupkis 0.18.0 → 0.18.2
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/CHANGELOG.md +14 -0
- package/package.json +1 -4
- package/src/assertion/assertion-types.ts +4 -4
- package/src/assertion/impl/async-parametric.ts +4 -21
- package/src/assertion/impl/sync-parametric.ts +5 -17
- package/src/expect.ts +0 -4
- package/src/guards.ts +24 -24
- package/src/internal-schema.ts +16 -32
- package/src/value-to-schema.ts +1 -1
- package/dist/assertion/assertion-async.cjs +0 -268
- package/dist/assertion/assertion-async.cjs.map +0 -1
- package/dist/assertion/assertion-async.d.cts +0 -40
- package/dist/assertion/assertion-async.d.cts.map +0 -1
- package/dist/assertion/assertion-async.d.ts +0 -40
- package/dist/assertion/assertion-async.d.ts.map +0 -1
- package/dist/assertion/assertion-async.js +0 -259
- package/dist/assertion/assertion-async.js.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.cjs +0 -132
- package/dist/assertion/assertion-standard-schema-async.cjs.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.d.cts +0 -52
- package/dist/assertion/assertion-standard-schema-async.d.cts.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.d.ts +0 -52
- package/dist/assertion/assertion-standard-schema-async.d.ts.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.js +0 -128
- package/dist/assertion/assertion-standard-schema-async.js.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.cjs +0 -141
- package/dist/assertion/assertion-standard-schema-sync.cjs.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.d.cts +0 -52
- package/dist/assertion/assertion-standard-schema-sync.d.cts.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.d.ts +0 -52
- package/dist/assertion/assertion-standard-schema-sync.d.ts.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.js +0 -137
- package/dist/assertion/assertion-standard-schema-sync.js.map +0 -1
- package/dist/assertion/assertion-sync.cjs +0 -284
- package/dist/assertion/assertion-sync.cjs.map +0 -1
- package/dist/assertion/assertion-sync.d.cts +0 -60
- package/dist/assertion/assertion-sync.d.cts.map +0 -1
- package/dist/assertion/assertion-sync.d.ts +0 -60
- package/dist/assertion/assertion-sync.d.ts.map +0 -1
- package/dist/assertion/assertion-sync.js +0 -275
- package/dist/assertion/assertion-sync.js.map +0 -1
- package/dist/assertion/assertion-types.cjs +0 -20
- package/dist/assertion/assertion-types.cjs.map +0 -1
- package/dist/assertion/assertion-types.d.cts +0 -1086
- package/dist/assertion/assertion-types.d.cts.map +0 -1
- package/dist/assertion/assertion-types.d.ts +0 -1086
- package/dist/assertion/assertion-types.d.ts.map +0 -1
- package/dist/assertion/assertion-types.js +0 -19
- package/dist/assertion/assertion-types.js.map +0 -1
- package/dist/assertion/assertion.cjs +0 -382
- package/dist/assertion/assertion.cjs.map +0 -1
- package/dist/assertion/assertion.d.cts +0 -109
- package/dist/assertion/assertion.d.cts.map +0 -1
- package/dist/assertion/assertion.d.ts +0 -109
- package/dist/assertion/assertion.d.ts.map +0 -1
- package/dist/assertion/assertion.js +0 -375
- package/dist/assertion/assertion.js.map +0 -1
- package/dist/assertion/create.cjs +0 -148
- package/dist/assertion/create.cjs.map +0 -1
- package/dist/assertion/create.d.cts +0 -85
- package/dist/assertion/create.d.cts.map +0 -1
- package/dist/assertion/create.d.ts +0 -85
- package/dist/assertion/create.d.ts.map +0 -1
- package/dist/assertion/create.js +0 -143
- package/dist/assertion/create.js.map +0 -1
- package/dist/assertion/format-assertion-failure.cjs +0 -63
- package/dist/assertion/format-assertion-failure.cjs.map +0 -1
- package/dist/assertion/format-assertion-failure.d.cts +0 -21
- package/dist/assertion/format-assertion-failure.d.cts.map +0 -1
- package/dist/assertion/format-assertion-failure.d.ts +0 -21
- package/dist/assertion/format-assertion-failure.d.ts.map +0 -1
- package/dist/assertion/format-assertion-failure.js +0 -59
- package/dist/assertion/format-assertion-failure.js.map +0 -1
- package/dist/assertion/impl/assertion-util.cjs +0 -68
- package/dist/assertion/impl/assertion-util.cjs.map +0 -1
- package/dist/assertion/impl/assertion-util.d.cts +0 -36
- package/dist/assertion/impl/assertion-util.d.cts.map +0 -1
- package/dist/assertion/impl/assertion-util.d.ts +0 -36
- package/dist/assertion/impl/assertion-util.d.ts.map +0 -1
- package/dist/assertion/impl/assertion-util.js +0 -62
- package/dist/assertion/impl/assertion-util.js.map +0 -1
- package/dist/assertion/impl/async-iterable.cjs +0 -627
- package/dist/assertion/impl/async-iterable.cjs.map +0 -1
- package/dist/assertion/impl/async-iterable.d.cts +0 -406
- package/dist/assertion/impl/async-iterable.d.cts.map +0 -1
- package/dist/assertion/impl/async-iterable.d.ts +0 -406
- package/dist/assertion/impl/async-iterable.d.ts.map +0 -1
- package/dist/assertion/impl/async-iterable.js +0 -624
- package/dist/assertion/impl/async-iterable.js.map +0 -1
- package/dist/assertion/impl/async-parametric.cjs +0 -423
- package/dist/assertion/impl/async-parametric.cjs.map +0 -1
- package/dist/assertion/impl/async-parametric.d.cts +0 -278
- package/dist/assertion/impl/async-parametric.d.cts.map +0 -1
- package/dist/assertion/impl/async-parametric.d.ts +0 -278
- package/dist/assertion/impl/async-parametric.d.ts.map +0 -1
- package/dist/assertion/impl/async-parametric.js +0 -420
- package/dist/assertion/impl/async-parametric.js.map +0 -1
- package/dist/assertion/impl/async.cjs +0 -56
- package/dist/assertion/impl/async.cjs.map +0 -1
- package/dist/assertion/impl/async.d.cts +0 -179
- package/dist/assertion/impl/async.d.cts.map +0 -1
- package/dist/assertion/impl/async.d.ts +0 -179
- package/dist/assertion/impl/async.d.ts.map +0 -1
- package/dist/assertion/impl/async.js +0 -39
- package/dist/assertion/impl/async.js.map +0 -1
- package/dist/assertion/impl/index.cjs +0 -37
- package/dist/assertion/impl/index.cjs.map +0 -1
- package/dist/assertion/impl/index.d.cts +0 -21
- package/dist/assertion/impl/index.d.cts.map +0 -1
- package/dist/assertion/impl/index.d.ts +0 -21
- package/dist/assertion/impl/index.d.ts.map +0 -1
- package/dist/assertion/impl/index.js +0 -21
- package/dist/assertion/impl/index.js.map +0 -1
- package/dist/assertion/impl/iteration-util.cjs +0 -297
- package/dist/assertion/impl/iteration-util.cjs.map +0 -1
- package/dist/assertion/impl/iteration-util.d.cts +0 -12
- package/dist/assertion/impl/iteration-util.d.cts.map +0 -1
- package/dist/assertion/impl/iteration-util.d.ts +0 -12
- package/dist/assertion/impl/iteration-util.d.ts.map +0 -1
- package/dist/assertion/impl/iteration-util.js +0 -282
- package/dist/assertion/impl/iteration-util.js.map +0 -1
- package/dist/assertion/impl/snapshot.cjs +0 -276
- package/dist/assertion/impl/snapshot.cjs.map +0 -1
- package/dist/assertion/impl/snapshot.d.cts +0 -278
- package/dist/assertion/impl/snapshot.d.cts.map +0 -1
- package/dist/assertion/impl/snapshot.d.ts +0 -278
- package/dist/assertion/impl/snapshot.d.ts.map +0 -1
- package/dist/assertion/impl/snapshot.js +0 -273
- package/dist/assertion/impl/snapshot.js.map +0 -1
- package/dist/assertion/impl/sync-basic.cjs +0 -553
- package/dist/assertion/impl/sync-basic.cjs.map +0 -1
- package/dist/assertion/impl/sync-basic.d.cts +0 -528
- package/dist/assertion/impl/sync-basic.d.cts.map +0 -1
- package/dist/assertion/impl/sync-basic.d.ts +0 -528
- package/dist/assertion/impl/sync-basic.d.ts.map +0 -1
- package/dist/assertion/impl/sync-basic.js +0 -550
- package/dist/assertion/impl/sync-basic.js.map +0 -1
- package/dist/assertion/impl/sync-collection.cjs +0 -856
- package/dist/assertion/impl/sync-collection.cjs.map +0 -1
- package/dist/assertion/impl/sync-collection.d.cts +0 -607
- package/dist/assertion/impl/sync-collection.d.cts.map +0 -1
- package/dist/assertion/impl/sync-collection.d.ts +0 -607
- package/dist/assertion/impl/sync-collection.d.ts.map +0 -1
- package/dist/assertion/impl/sync-collection.js +0 -850
- package/dist/assertion/impl/sync-collection.js.map +0 -1
- package/dist/assertion/impl/sync-date.cjs +0 -341
- package/dist/assertion/impl/sync-date.cjs.map +0 -1
- package/dist/assertion/impl/sync-date.d.cts +0 -209
- package/dist/assertion/impl/sync-date.d.cts.map +0 -1
- package/dist/assertion/impl/sync-date.d.ts +0 -209
- package/dist/assertion/impl/sync-date.d.ts.map +0 -1
- package/dist/assertion/impl/sync-date.js +0 -338
- package/dist/assertion/impl/sync-date.js.map +0 -1
- package/dist/assertion/impl/sync-esoteric.cjs +0 -214
- package/dist/assertion/impl/sync-esoteric.cjs.map +0 -1
- package/dist/assertion/impl/sync-esoteric.d.cts +0 -191
- package/dist/assertion/impl/sync-esoteric.d.cts.map +0 -1
- package/dist/assertion/impl/sync-esoteric.d.ts +0 -191
- package/dist/assertion/impl/sync-esoteric.d.ts.map +0 -1
- package/dist/assertion/impl/sync-esoteric.js +0 -211
- package/dist/assertion/impl/sync-esoteric.js.map +0 -1
- package/dist/assertion/impl/sync-iterable.cjs +0 -512
- package/dist/assertion/impl/sync-iterable.cjs.map +0 -1
- package/dist/assertion/impl/sync-iterable.d.cts +0 -334
- package/dist/assertion/impl/sync-iterable.d.cts.map +0 -1
- package/dist/assertion/impl/sync-iterable.d.ts +0 -334
- package/dist/assertion/impl/sync-iterable.d.ts.map +0 -1
- package/dist/assertion/impl/sync-iterable.js +0 -509
- package/dist/assertion/impl/sync-iterable.js.map +0 -1
- package/dist/assertion/impl/sync-parametric.cjs +0 -812
- package/dist/assertion/impl/sync-parametric.cjs.map +0 -1
- package/dist/assertion/impl/sync-parametric.d.cts +0 -560
- package/dist/assertion/impl/sync-parametric.d.cts.map +0 -1
- package/dist/assertion/impl/sync-parametric.d.ts +0 -560
- package/dist/assertion/impl/sync-parametric.d.ts.map +0 -1
- package/dist/assertion/impl/sync-parametric.js +0 -809
- package/dist/assertion/impl/sync-parametric.js.map +0 -1
- package/dist/assertion/impl/sync.cjs +0 -214
- package/dist/assertion/impl/sync.cjs.map +0 -1
- package/dist/assertion/impl/sync.d.cts +0 -512
- package/dist/assertion/impl/sync.d.cts.map +0 -1
- package/dist/assertion/impl/sync.d.ts +0 -512
- package/dist/assertion/impl/sync.d.ts.map +0 -1
- package/dist/assertion/impl/sync.js +0 -197
- package/dist/assertion/impl/sync.js.map +0 -1
- package/dist/assertion/index.cjs +0 -38
- package/dist/assertion/index.cjs.map +0 -1
- package/dist/assertion/index.d.cts +0 -18
- package/dist/assertion/index.d.cts.map +0 -1
- package/dist/assertion/index.d.ts +0 -18
- package/dist/assertion/index.d.ts.map +0 -1
- package/dist/assertion/index.js +0 -17
- package/dist/assertion/index.js.map +0 -1
- package/dist/assertion/slotify.cjs +0 -165
- package/dist/assertion/slotify.cjs.map +0 -1
- package/dist/assertion/slotify.d.cts +0 -11
- package/dist/assertion/slotify.d.cts.map +0 -1
- package/dist/assertion/slotify.d.ts +0 -11
- package/dist/assertion/slotify.d.ts.map +0 -1
- package/dist/assertion/slotify.js +0 -161
- package/dist/assertion/slotify.js.map +0 -1
- package/dist/bootstrap.cjs +0 -43
- package/dist/bootstrap.cjs.map +0 -1
- package/dist/bootstrap.d.cts +0 -27
- package/dist/bootstrap.d.cts.map +0 -1
- package/dist/bootstrap.d.ts +0 -27
- package/dist/bootstrap.d.ts.map +0 -1
- package/dist/bootstrap.js +0 -40
- package/dist/bootstrap.js.map +0 -1
- package/dist/constant.cjs +0 -82
- package/dist/constant.cjs.map +0 -1
- package/dist/constant.d.cts +0 -69
- package/dist/constant.d.cts.map +0 -1
- package/dist/constant.d.ts +0 -69
- package/dist/constant.d.ts.map +0 -1
- package/dist/constant.js +0 -79
- package/dist/constant.js.map +0 -1
- package/dist/diff.cjs +0 -340
- package/dist/diff.cjs.map +0 -1
- package/dist/diff.d.cts +0 -51
- package/dist/diff.d.cts.map +0 -1
- package/dist/diff.d.ts +0 -51
- package/dist/diff.d.ts.map +0 -1
- package/dist/diff.js +0 -334
- package/dist/diff.js.map +0 -1
- package/dist/error.cjs +0 -204
- package/dist/error.cjs.map +0 -1
- package/dist/error.d.cts +0 -212
- package/dist/error.d.cts.map +0 -1
- package/dist/error.d.ts +0 -212
- package/dist/error.d.ts.map +0 -1
- package/dist/error.js +0 -191
- package/dist/error.js.map +0 -1
- package/dist/expect.cjs +0 -590
- package/dist/expect.cjs.map +0 -1
- package/dist/expect.d.cts +0 -138
- package/dist/expect.d.cts.map +0 -1
- package/dist/expect.d.ts +0 -138
- package/dist/expect.d.ts.map +0 -1
- package/dist/expect.js +0 -582
- package/dist/expect.js.map +0 -1
- package/dist/guards.cjs +0 -297
- package/dist/guards.cjs.map +0 -1
- package/dist/guards.d.cts +0 -231
- package/dist/guards.d.cts.map +0 -1
- package/dist/guards.d.ts +0 -231
- package/dist/guards.d.ts.map +0 -1
- package/dist/guards.js +0 -277
- package/dist/guards.js.map +0 -1
- package/dist/index.cjs +0 -111
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -448
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.ts +0 -448
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -71
- package/dist/index.js.map +0 -1
- package/dist/internal-schema.cjs +0 -253
- package/dist/internal-schema.cjs.map +0 -1
- package/dist/internal-schema.d.cts +0 -8
- package/dist/internal-schema.d.cts.map +0 -1
- package/dist/internal-schema.d.ts +0 -8
- package/dist/internal-schema.d.ts.map +0 -1
- package/dist/internal-schema.js +0 -248
- package/dist/internal-schema.js.map +0 -1
- package/dist/metadata.cjs +0 -57
- package/dist/metadata.cjs.map +0 -1
- package/dist/metadata.d.cts +0 -27
- package/dist/metadata.d.cts.map +0 -1
- package/dist/metadata.d.ts +0 -27
- package/dist/metadata.d.ts.map +0 -1
- package/dist/metadata.js +0 -54
- package/dist/metadata.js.map +0 -1
- package/dist/schema.cjs +0 -1522
- package/dist/schema.cjs.map +0 -1
- package/dist/schema.d.cts +0 -1196
- package/dist/schema.d.cts.map +0 -1
- package/dist/schema.d.ts +0 -1196
- package/dist/schema.d.ts.map +0 -1
- package/dist/schema.js +0 -1516
- package/dist/schema.js.map +0 -1
- package/dist/snapshot/adapter.cjs +0 -31
- package/dist/snapshot/adapter.cjs.map +0 -1
- package/dist/snapshot/adapter.d.cts +0 -258
- package/dist/snapshot/adapter.d.cts.map +0 -1
- package/dist/snapshot/adapter.d.ts +0 -258
- package/dist/snapshot/adapter.d.ts.map +0 -1
- package/dist/snapshot/adapter.js +0 -27
- package/dist/snapshot/adapter.js.map +0 -1
- package/dist/snapshot/adapters/fallback.cjs +0 -453
- package/dist/snapshot/adapters/fallback.cjs.map +0 -1
- package/dist/snapshot/adapters/fallback.d.cts +0 -185
- package/dist/snapshot/adapters/fallback.d.cts.map +0 -1
- package/dist/snapshot/adapters/fallback.d.ts +0 -185
- package/dist/snapshot/adapters/fallback.d.ts.map +0 -1
- package/dist/snapshot/adapters/fallback.js +0 -446
- package/dist/snapshot/adapters/fallback.js.map +0 -1
- package/dist/snapshot/adapters/node-test.cjs +0 -301
- package/dist/snapshot/adapters/node-test.cjs.map +0 -1
- package/dist/snapshot/adapters/node-test.d.cts +0 -131
- package/dist/snapshot/adapters/node-test.d.cts.map +0 -1
- package/dist/snapshot/adapters/node-test.d.ts +0 -131
- package/dist/snapshot/adapters/node-test.d.ts.map +0 -1
- package/dist/snapshot/adapters/node-test.js +0 -297
- package/dist/snapshot/adapters/node-test.js.map +0 -1
- package/dist/snapshot/index.cjs +0 -61
- package/dist/snapshot/index.cjs.map +0 -1
- package/dist/snapshot/index.d.cts +0 -40
- package/dist/snapshot/index.d.cts.map +0 -1
- package/dist/snapshot/index.d.ts +0 -40
- package/dist/snapshot/index.d.ts.map +0 -1
- package/dist/snapshot/index.js +0 -44
- package/dist/snapshot/index.js.map +0 -1
- package/dist/snapshot/node-version.cjs +0 -49
- package/dist/snapshot/node-version.cjs.map +0 -1
- package/dist/snapshot/node-version.d.cts +0 -34
- package/dist/snapshot/node-version.d.cts.map +0 -1
- package/dist/snapshot/node-version.d.ts +0 -34
- package/dist/snapshot/node-version.d.ts.map +0 -1
- package/dist/snapshot/node-version.js +0 -44
- package/dist/snapshot/node-version.js.map +0 -1
- package/dist/snapshot/select-adapter.cjs +0 -170
- package/dist/snapshot/select-adapter.cjs.map +0 -1
- package/dist/snapshot/select-adapter.d.cts +0 -128
- package/dist/snapshot/select-adapter.d.cts.map +0 -1
- package/dist/snapshot/select-adapter.d.ts +0 -128
- package/dist/snapshot/select-adapter.d.ts.map +0 -1
- package/dist/snapshot/select-adapter.js +0 -164
- package/dist/snapshot/select-adapter.js.map +0 -1
- package/dist/snapshot/serializer.cjs +0 -246
- package/dist/snapshot/serializer.cjs.map +0 -1
- package/dist/snapshot/serializer.d.cts +0 -126
- package/dist/snapshot/serializer.d.cts.map +0 -1
- package/dist/snapshot/serializer.d.ts +0 -126
- package/dist/snapshot/serializer.d.ts.map +0 -1
- package/dist/snapshot/serializer.js +0 -238
- package/dist/snapshot/serializer.js.map +0 -1
- package/dist/standard-schema.cjs +0 -13
- package/dist/standard-schema.cjs.map +0 -1
- package/dist/standard-schema.d.cts +0 -192
- package/dist/standard-schema.d.cts.map +0 -1
- package/dist/standard-schema.d.ts +0 -192
- package/dist/standard-schema.d.ts.map +0 -1
- package/dist/standard-schema.js +0 -12
- package/dist/standard-schema.js.map +0 -1
- package/dist/types.cjs +0 -22
- package/dist/types.cjs.map +0 -1
- package/dist/types.d.cts +0 -905
- package/dist/types.d.cts.map +0 -1
- package/dist/types.d.ts +0 -905
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -21
- package/dist/types.js.map +0 -1
- package/dist/use.cjs +0 -240
- package/dist/use.cjs.map +0 -1
- package/dist/use.d.cts +0 -8
- package/dist/use.d.cts.map +0 -1
- package/dist/use.d.ts +0 -8
- package/dist/use.d.ts.map +0 -1
- package/dist/use.js +0 -236
- package/dist/use.js.map +0 -1
- package/dist/util.cjs +0 -255
- package/dist/util.cjs.map +0 -1
- package/dist/util.d.cts +0 -141
- package/dist/util.d.cts.map +0 -1
- package/dist/util.d.ts +0 -141
- package/dist/util.d.ts.map +0 -1
- package/dist/util.js +0 -234
- package/dist/util.js.map +0 -1
- package/dist/value-to-schema.cjs +0 -537
- package/dist/value-to-schema.cjs.map +0 -1
- package/dist/value-to-schema.d.cts +0 -144
- package/dist/value-to-schema.d.cts.map +0 -1
- package/dist/value-to-schema.d.ts +0 -144
- package/dist/value-to-schema.d.ts.map +0 -1
- package/dist/value-to-schema.js +0 -533
- package/dist/value-to-schema.js.map +0 -1
|
@@ -1,284 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Synchronous assertion subclasses.
|
|
4
|
-
*
|
|
5
|
-
* @packageDocumentation
|
|
6
|
-
* @see {@link AssertionFunctionSync} for function-based assertions
|
|
7
|
-
* @see {@link AssertionSchemaSync} for schema-based assertions
|
|
8
|
-
*/
|
|
9
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
10
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
11
|
-
};
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.BupkisAssertionSchemaSync = exports.BupkisAssertionFunctionSync = exports.BupkisAssertionSync = void 0;
|
|
14
|
-
const debug_1 = __importDefault(require("debug"));
|
|
15
|
-
const util_1 = require("util");
|
|
16
|
-
const zod_1 = require("zod");
|
|
17
|
-
const error_js_1 = require("../error.cjs");
|
|
18
|
-
const guards_js_1 = require("../guards.cjs");
|
|
19
|
-
const internal_schema_js_1 = require("../internal-schema.cjs");
|
|
20
|
-
const assertion_js_1 = require("./assertion.cjs");
|
|
21
|
-
const format_assertion_failure_js_1 = require("./format-assertion-failure.cjs");
|
|
22
|
-
const debug = (0, debug_1.default)('bupkis:assertion:sync');
|
|
23
|
-
/**
|
|
24
|
-
* Abstract class for synchronous assertions.
|
|
25
|
-
*
|
|
26
|
-
* Child classes are expected to implement {@link execute}.
|
|
27
|
-
*/
|
|
28
|
-
class BupkisAssertionSync extends assertion_js_1.BupkisAssertion {
|
|
29
|
-
/**
|
|
30
|
-
* Parses raw arguments against the slots of this assertion to determine if
|
|
31
|
-
* this assertion should be executed against those arguments.
|
|
32
|
-
*
|
|
33
|
-
* For example, if an assertion wants the subject to be a `z.string()`, then
|
|
34
|
-
* this will validate that the first raw arg parses as a string. It will also
|
|
35
|
-
* validate Phrase Literals as well, such as "to be a string". If all slots
|
|
36
|
-
* match and none of the slots are "unknown" or "any", then `exactMatch` will
|
|
37
|
-
* be true.
|
|
38
|
-
*
|
|
39
|
-
* If any slot does not match, this returns `success: false`.
|
|
40
|
-
*
|
|
41
|
-
* @param args Raw arguments
|
|
42
|
-
* @returns Result of parsing attempt
|
|
43
|
-
*/
|
|
44
|
-
parseValues(args) {
|
|
45
|
-
const { slots } = this;
|
|
46
|
-
const parsedValues = [];
|
|
47
|
-
const mismatch = this.maybeParseValuesArgMismatch(args);
|
|
48
|
-
if (mismatch) {
|
|
49
|
-
return mismatch;
|
|
50
|
-
}
|
|
51
|
-
let exactMatch = true;
|
|
52
|
-
for (let i = 0; i < slots.length; i++) {
|
|
53
|
-
const slot = slots[i];
|
|
54
|
-
const arg = args[i];
|
|
55
|
-
const parsedLiteralResult = this.parseSlotForLiteral(slot, i, arg);
|
|
56
|
-
if (parsedLiteralResult === true) {
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
else if (parsedLiteralResult !== false) {
|
|
60
|
-
return parsedLiteralResult;
|
|
61
|
-
}
|
|
62
|
-
// unknown/any accept anything
|
|
63
|
-
// IMPORTANT: do not use a type guard here
|
|
64
|
-
if (slot.def.type === 'unknown' || slot.def.type === 'any') {
|
|
65
|
-
parsedValues.push(arg);
|
|
66
|
-
exactMatch = false;
|
|
67
|
-
continue;
|
|
68
|
-
}
|
|
69
|
-
const result = slot.safeParse(arg);
|
|
70
|
-
if (!result.success) {
|
|
71
|
-
return {
|
|
72
|
-
success: false,
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
parsedValues.push(arg);
|
|
76
|
-
}
|
|
77
|
-
return {
|
|
78
|
-
exactMatch,
|
|
79
|
-
parsedValues: parsedValues,
|
|
80
|
-
success: true,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
exports.BupkisAssertionSync = BupkisAssertionSync;
|
|
85
|
-
class BupkisAssertionFunctionSync extends BupkisAssertionSync {
|
|
86
|
-
execute(parsedValues, args, stackStartFn, _parseResult) {
|
|
87
|
-
let result;
|
|
88
|
-
try {
|
|
89
|
-
result = this.impl.call(null,
|
|
90
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
91
|
-
...parsedValues);
|
|
92
|
-
}
|
|
93
|
-
catch (err) {
|
|
94
|
-
if (error_js_1.AssertionError.isAssertionError(err)) {
|
|
95
|
-
throw err;
|
|
96
|
-
}
|
|
97
|
-
if ((0, guards_js_1.isError)(err) && err instanceof zod_1.z.ZodError) {
|
|
98
|
-
throw this.fromZodError(err, stackStartFn, parsedValues);
|
|
99
|
-
}
|
|
100
|
-
throw new error_js_1.AssertionImplementationError(`Unexpected error thrown from assertion ${this}: ${err}`, { cause: err });
|
|
101
|
-
}
|
|
102
|
-
if ((0, guards_js_1.isPromiseLike)(result)) {
|
|
103
|
-
// Avoid unhandled promise rejection
|
|
104
|
-
Promise.resolve(result).catch((err) => {
|
|
105
|
-
debug(`⚠️ Ate unhandled rejection from assertion %s: %O`, this, err);
|
|
106
|
-
});
|
|
107
|
-
throw new error_js_1.UnexpectedAsyncError(`Assertion ${this} returned a Promise; use expectAsync() instead of expect()`);
|
|
108
|
-
}
|
|
109
|
-
if ((0, guards_js_1.isZodType)(result)) {
|
|
110
|
-
const zodResult = result.safeParse(parsedValues[0]);
|
|
111
|
-
if (!zodResult.success) {
|
|
112
|
-
throw this.fromZodError(zodResult.error, stackStartFn, parsedValues);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
else if ((0, guards_js_1.isStandardSchema)(result)) {
|
|
116
|
-
const validationResult = result['~standard'].validate(parsedValues[0]);
|
|
117
|
-
if (validationResult instanceof Promise) {
|
|
118
|
-
validationResult.catch(() => {
|
|
119
|
-
/* prevent unhandled rejection */
|
|
120
|
-
});
|
|
121
|
-
throw new error_js_1.UnexpectedAsyncError(`Standard Schema returned a Promise; use expectAsync() instead of expect()`);
|
|
122
|
-
}
|
|
123
|
-
if (validationResult.issues) {
|
|
124
|
-
throw this.fromStandardSchemaIssues(validationResult.issues, stackStartFn, parsedValues);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
else if ((0, guards_js_1.isBoolean)(result)) {
|
|
128
|
-
if (!result) {
|
|
129
|
-
throw new error_js_1.AssertionError({
|
|
130
|
-
id: this.id,
|
|
131
|
-
message: `Assertion ${this} failed for arguments: ${(0, util_1.inspect)(args)}`,
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
else if ((0, guards_js_1.isError)(result) && result instanceof zod_1.z.ZodError) {
|
|
136
|
-
throw this.fromZodError(result, stackStartFn, parsedValues);
|
|
137
|
-
}
|
|
138
|
-
else if ((0, internal_schema_js_1.isAssertionParseRequest)(result)) {
|
|
139
|
-
const { asyncSchema, schema, subject } = result;
|
|
140
|
-
if (asyncSchema) {
|
|
141
|
-
throw new error_js_1.AssertionImplementationError(`Sync assertion ${this} returned an async schema in its AssertionParseRequest`);
|
|
142
|
-
}
|
|
143
|
-
if (!schema) {
|
|
144
|
-
throw new error_js_1.AssertionImplementationError(`Sync assertion ${this} returned AssertionParseRequest without schema`);
|
|
145
|
-
}
|
|
146
|
-
if ((0, guards_js_1.isZodType)(schema)) {
|
|
147
|
-
const zodResult = schema.safeParse(subject);
|
|
148
|
-
if (!zodResult.success) {
|
|
149
|
-
throw this.fromZodError(zodResult.error, stackStartFn, subject);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
else if ((0, guards_js_1.isStandardSchema)(schema)) {
|
|
153
|
-
const validationResult = schema['~standard'].validate(subject);
|
|
154
|
-
if (validationResult instanceof Promise) {
|
|
155
|
-
validationResult.catch(() => {
|
|
156
|
-
/* prevent unhandled rejection */
|
|
157
|
-
});
|
|
158
|
-
throw new error_js_1.AssertionImplementationError(`Sync assertion ${this} returned a schema with async validation in AssertionParseRequest`);
|
|
159
|
-
}
|
|
160
|
-
if (validationResult.issues) {
|
|
161
|
-
throw this.fromStandardSchemaIssues(validationResult.issues, stackStartFn, subject);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
else if ((0, internal_schema_js_1.isAssertionFailure)(result)) {
|
|
166
|
-
const diffOutput = (0, format_assertion_failure_js_1.formatAssertionFailure)(result);
|
|
167
|
-
const baseMessage = result.message ??
|
|
168
|
-
`Assertion ${this} failed for arguments: ${(0, util_1.inspect)(args)}`;
|
|
169
|
-
const message = diffOutput
|
|
170
|
-
? `${baseMessage}\n${diffOutput}`
|
|
171
|
-
: baseMessage;
|
|
172
|
-
throw new error_js_1.AssertionError({
|
|
173
|
-
actual: result.actual,
|
|
174
|
-
expected: result.expected,
|
|
175
|
-
id: this.id,
|
|
176
|
-
message,
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
else if (result) {
|
|
180
|
-
throw new error_js_1.AssertionImplementationError(`Invalid return type from assertion ${this}; expected boolean, ZodType, or AssertionFailure`, { result });
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
exports.BupkisAssertionFunctionSync = BupkisAssertionFunctionSync;
|
|
185
|
-
/**
|
|
186
|
-
* A class representing an assertion implemented as a function.
|
|
187
|
-
*
|
|
188
|
-
* This function may:
|
|
189
|
-
*
|
|
190
|
-
* 1. Return a `boolean` indicating pass/fail.
|
|
191
|
-
* 2. Return a `ZodType` which will be used to validate the subject.
|
|
192
|
-
* 3. Return a `Promise` resolving to either of the above (when called via
|
|
193
|
-
* {@link expectAsync})
|
|
194
|
-
* 4. Throw a {@link AssertionError}; when called via {@link expectAsync}, reject
|
|
195
|
-
* with an {@link AssertionError}
|
|
196
|
-
*/
|
|
197
|
-
class BupkisAssertionSchemaSync extends BupkisAssertionSync {
|
|
198
|
-
execute(parsedValues, _args, stackStartFn, parseResult) {
|
|
199
|
-
// Check if we have cached validation result from parseValues
|
|
200
|
-
const cachedValidation = parseResult?.success
|
|
201
|
-
? parseResult.subjectValidationResult
|
|
202
|
-
: undefined;
|
|
203
|
-
if (cachedValidation) {
|
|
204
|
-
if (!cachedValidation.success) {
|
|
205
|
-
if ('error' in cachedValidation) {
|
|
206
|
-
throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
|
|
207
|
-
}
|
|
208
|
-
else if ('issues' in cachedValidation) {
|
|
209
|
-
throw this.fromStandardSchemaIssues(cachedValidation.issues, stackStartFn, parsedValues);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
// Subject validation passed, nothing more to do
|
|
213
|
-
return;
|
|
214
|
-
}
|
|
215
|
-
// Fall back to standard validation if no cached result
|
|
216
|
-
const [subject] = parsedValues;
|
|
217
|
-
const result = this.impl.safeParse(subject);
|
|
218
|
-
if (!result.success) {
|
|
219
|
-
throw this.fromZodError(result.error, stackStartFn, parsedValues);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
parseValues(args) {
|
|
223
|
-
const { slots } = this;
|
|
224
|
-
const parsedValues = [];
|
|
225
|
-
const mismatch = this.maybeParseValuesArgMismatch(args);
|
|
226
|
-
if (mismatch) {
|
|
227
|
-
return mismatch;
|
|
228
|
-
}
|
|
229
|
-
let exactMatch = true;
|
|
230
|
-
let subjectValidationResult;
|
|
231
|
-
for (let i = 0; i < slots.length; i++) {
|
|
232
|
-
const slot = slots[i];
|
|
233
|
-
const arg = args[i];
|
|
234
|
-
const parsedLiteralResult = this.parseSlotForLiteral(slot, i, arg);
|
|
235
|
-
if (parsedLiteralResult === true) {
|
|
236
|
-
continue;
|
|
237
|
-
}
|
|
238
|
-
else if (parsedLiteralResult !== false) {
|
|
239
|
-
return parsedLiteralResult;
|
|
240
|
-
}
|
|
241
|
-
// For the subject slot (first slot if it's unknown/any), try optimized validation
|
|
242
|
-
if (i === 0 &&
|
|
243
|
-
(slot.def.type === 'unknown' || slot.def.type === 'any') &&
|
|
244
|
-
this.isSimpleSchemaAssertion()) {
|
|
245
|
-
const result = this.impl.safeParse(arg);
|
|
246
|
-
if (result.success) {
|
|
247
|
-
subjectValidationResult = { data: result.data, success: true };
|
|
248
|
-
parsedValues.push(result.data); // Use validated data
|
|
249
|
-
}
|
|
250
|
-
else {
|
|
251
|
-
subjectValidationResult = { error: result.error, success: false };
|
|
252
|
-
parsedValues.push(arg); // Keep original for error reporting
|
|
253
|
-
}
|
|
254
|
-
exactMatch = false; // Subject was validated, so we know the exact type
|
|
255
|
-
continue;
|
|
256
|
-
}
|
|
257
|
-
// Standard slot processing for non-optimized cases
|
|
258
|
-
if (slot.def.type === 'unknown' || slot.def.type === 'any') {
|
|
259
|
-
parsedValues.push(arg);
|
|
260
|
-
exactMatch = false;
|
|
261
|
-
continue;
|
|
262
|
-
}
|
|
263
|
-
const result = slot.safeParse(arg);
|
|
264
|
-
if (!result.success) {
|
|
265
|
-
return {
|
|
266
|
-
success: false,
|
|
267
|
-
};
|
|
268
|
-
}
|
|
269
|
-
parsedValues.push(arg);
|
|
270
|
-
}
|
|
271
|
-
const result = {
|
|
272
|
-
exactMatch,
|
|
273
|
-
parsedValues: parsedValues,
|
|
274
|
-
success: true,
|
|
275
|
-
};
|
|
276
|
-
// Add cached validation result if we performed optimization
|
|
277
|
-
if (subjectValidationResult) {
|
|
278
|
-
result.subjectValidationResult = subjectValidationResult;
|
|
279
|
-
}
|
|
280
|
-
return result;
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
exports.BupkisAssertionSchemaSync = BupkisAssertionSchemaSync;
|
|
284
|
-
//# sourceMappingURL=assertion-sync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-sync.js","sourceRoot":"","sources":["../../src/assertion/assertion-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Synchronous assertion subclasses.
|
|
3
|
-
*
|
|
4
|
-
* @packageDocumentation
|
|
5
|
-
* @see {@link AssertionFunctionSync} for function-based assertions
|
|
6
|
-
* @see {@link AssertionSchemaSync} for schema-based assertions
|
|
7
|
-
*/
|
|
8
|
-
import { type AssertionFunctionSync, type AssertionImplFnSync, type AssertionImplSchemaSync, type AssertionImplSync, type AssertionParts, type AssertionSchemaSync, type AssertionSlots, type AssertionSync, type ParsedResult, type ParsedValues } from "./assertion-types.cjs";
|
|
9
|
-
import { BupkisAssertion } from "./assertion.cjs";
|
|
10
|
-
/**
|
|
11
|
-
* Abstract class for synchronous assertions.
|
|
12
|
-
*
|
|
13
|
-
* Child classes are expected to implement {@link execute}.
|
|
14
|
-
*/
|
|
15
|
-
export declare abstract class BupkisAssertionSync<Parts extends AssertionParts, Impl extends AssertionImplSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertion<Parts, Impl, Slots> implements AssertionSync<Parts, Impl, Slots> {
|
|
16
|
-
/**
|
|
17
|
-
* Parses raw arguments synchronously against this `Assertion`'s Slots to
|
|
18
|
-
* determine if they match this `Assertion`.
|
|
19
|
-
*
|
|
20
|
-
* @param args Raw arguments provided to `expect()`
|
|
21
|
-
* @returns Result of parsing attempt
|
|
22
|
-
*/
|
|
23
|
-
abstract execute(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): void;
|
|
24
|
-
/**
|
|
25
|
-
* Parses raw arguments against the slots of this assertion to determine if
|
|
26
|
-
* this assertion should be executed against those arguments.
|
|
27
|
-
*
|
|
28
|
-
* For example, if an assertion wants the subject to be a `z.string()`, then
|
|
29
|
-
* this will validate that the first raw arg parses as a string. It will also
|
|
30
|
-
* validate Phrase Literals as well, such as "to be a string". If all slots
|
|
31
|
-
* match and none of the slots are "unknown" or "any", then `exactMatch` will
|
|
32
|
-
* be true.
|
|
33
|
-
*
|
|
34
|
-
* If any slot does not match, this returns `success: false`.
|
|
35
|
-
*
|
|
36
|
-
* @param args Raw arguments
|
|
37
|
-
* @returns Result of parsing attempt
|
|
38
|
-
*/
|
|
39
|
-
parseValues<Args extends readonly unknown[]>(args: Args): ParsedResult<Parts>;
|
|
40
|
-
}
|
|
41
|
-
export declare class BupkisAssertionFunctionSync<Parts extends AssertionParts, Impl extends AssertionImplFnSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertionSync<Parts, Impl, Slots> implements AssertionFunctionSync<Parts, Impl, Slots> {
|
|
42
|
-
execute(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, _parseResult?: ParsedResult<Parts>): void;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* A class representing an assertion implemented as a function.
|
|
46
|
-
*
|
|
47
|
-
* This function may:
|
|
48
|
-
*
|
|
49
|
-
* 1. Return a `boolean` indicating pass/fail.
|
|
50
|
-
* 2. Return a `ZodType` which will be used to validate the subject.
|
|
51
|
-
* 3. Return a `Promise` resolving to either of the above (when called via
|
|
52
|
-
* {@link expectAsync})
|
|
53
|
-
* 4. Throw a {@link AssertionError}; when called via {@link expectAsync}, reject
|
|
54
|
-
* with an {@link AssertionError}
|
|
55
|
-
*/
|
|
56
|
-
export declare class BupkisAssertionSchemaSync<Parts extends AssertionParts, Impl extends AssertionImplSchemaSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertionSync<Parts, Impl, Slots> implements AssertionSchemaSync<Parts, Impl, Slots> {
|
|
57
|
-
execute(parsedValues: ParsedValues<Parts>, _args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): void;
|
|
58
|
-
parseValues<Args extends readonly unknown[]>(args: Args): ParsedResult<Parts>;
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=assertion-sync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-sync.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion-sync.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,OAAO,EACL,KAAK,qBAAqB,EAE1B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,YAAY,EAClB,8BAA6B;AAC9B,OAAO,EAAE,eAAe,EAAE,wBAAuB;AAKjD;;;;GAIG;AACH,8BAAsB,mBAAmB,CACvC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,iBAAiB,CAAC,KAAK,CAAC,EACrC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE5C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,IAAI;IAEP;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACzC,IAAI,EAAE,IAAI,GACT,YAAY,CAAC,KAAK,CAAC;CA4CvB;AAED,qBAAa,2BAA2B,CACtC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,mBAAmB,CAAC,KAAK,CAAC,EACvC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC9C,YAAW,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE3C,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GACjC,IAAI;CAuHR;AAED;;;;;;;;;;;GAWG;AAEH,qBAAa,yBAAyB,CACpC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,uBAAuB,CAAC,KAAK,CAAC,EAC3C,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC9C,YAAW,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEzC,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,OAAO,EAAE,EAChB,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,IAAI;IAkCE,WAAW,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAClD,IAAI,EAAE,IAAI,GACT,YAAY,CAAC,KAAK,CAAC;CAoEvB"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Synchronous assertion subclasses.
|
|
3
|
-
*
|
|
4
|
-
* @packageDocumentation
|
|
5
|
-
* @see {@link AssertionFunctionSync} for function-based assertions
|
|
6
|
-
* @see {@link AssertionSchemaSync} for schema-based assertions
|
|
7
|
-
*/
|
|
8
|
-
import { type AssertionFunctionSync, type AssertionImplFnSync, type AssertionImplSchemaSync, type AssertionImplSync, type AssertionParts, type AssertionSchemaSync, type AssertionSlots, type AssertionSync, type ParsedResult, type ParsedValues } from "./assertion-types.js";
|
|
9
|
-
import { BupkisAssertion } from "./assertion.js";
|
|
10
|
-
/**
|
|
11
|
-
* Abstract class for synchronous assertions.
|
|
12
|
-
*
|
|
13
|
-
* Child classes are expected to implement {@link execute}.
|
|
14
|
-
*/
|
|
15
|
-
export declare abstract class BupkisAssertionSync<Parts extends AssertionParts, Impl extends AssertionImplSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertion<Parts, Impl, Slots> implements AssertionSync<Parts, Impl, Slots> {
|
|
16
|
-
/**
|
|
17
|
-
* Parses raw arguments synchronously against this `Assertion`'s Slots to
|
|
18
|
-
* determine if they match this `Assertion`.
|
|
19
|
-
*
|
|
20
|
-
* @param args Raw arguments provided to `expect()`
|
|
21
|
-
* @returns Result of parsing attempt
|
|
22
|
-
*/
|
|
23
|
-
abstract execute(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): void;
|
|
24
|
-
/**
|
|
25
|
-
* Parses raw arguments against the slots of this assertion to determine if
|
|
26
|
-
* this assertion should be executed against those arguments.
|
|
27
|
-
*
|
|
28
|
-
* For example, if an assertion wants the subject to be a `z.string()`, then
|
|
29
|
-
* this will validate that the first raw arg parses as a string. It will also
|
|
30
|
-
* validate Phrase Literals as well, such as "to be a string". If all slots
|
|
31
|
-
* match and none of the slots are "unknown" or "any", then `exactMatch` will
|
|
32
|
-
* be true.
|
|
33
|
-
*
|
|
34
|
-
* If any slot does not match, this returns `success: false`.
|
|
35
|
-
*
|
|
36
|
-
* @param args Raw arguments
|
|
37
|
-
* @returns Result of parsing attempt
|
|
38
|
-
*/
|
|
39
|
-
parseValues<Args extends readonly unknown[]>(args: Args): ParsedResult<Parts>;
|
|
40
|
-
}
|
|
41
|
-
export declare class BupkisAssertionFunctionSync<Parts extends AssertionParts, Impl extends AssertionImplFnSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertionSync<Parts, Impl, Slots> implements AssertionFunctionSync<Parts, Impl, Slots> {
|
|
42
|
-
execute(parsedValues: ParsedValues<Parts>, args: unknown[], stackStartFn: (...args: any[]) => any, _parseResult?: ParsedResult<Parts>): void;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* A class representing an assertion implemented as a function.
|
|
46
|
-
*
|
|
47
|
-
* This function may:
|
|
48
|
-
*
|
|
49
|
-
* 1. Return a `boolean` indicating pass/fail.
|
|
50
|
-
* 2. Return a `ZodType` which will be used to validate the subject.
|
|
51
|
-
* 3. Return a `Promise` resolving to either of the above (when called via
|
|
52
|
-
* {@link expectAsync})
|
|
53
|
-
* 4. Throw a {@link AssertionError}; when called via {@link expectAsync}, reject
|
|
54
|
-
* with an {@link AssertionError}
|
|
55
|
-
*/
|
|
56
|
-
export declare class BupkisAssertionSchemaSync<Parts extends AssertionParts, Impl extends AssertionImplSchemaSync<Parts>, Slots extends AssertionSlots<Parts>> extends BupkisAssertionSync<Parts, Impl, Slots> implements AssertionSchemaSync<Parts, Impl, Slots> {
|
|
57
|
-
execute(parsedValues: ParsedValues<Parts>, _args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): void;
|
|
58
|
-
parseValues<Args extends readonly unknown[]>(args: Args): ParsedResult<Parts>;
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=assertion-sync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-sync.d.ts","sourceRoot":"","sources":["../../src/assertion/assertion-sync.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,OAAO,EACL,KAAK,qBAAqB,EAE1B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,YAAY,EAClB,6BAA6B;AAC9B,OAAO,EAAE,eAAe,EAAE,uBAAuB;AAKjD;;;;GAIG;AACH,8BAAsB,mBAAmB,CACvC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,iBAAiB,CAAC,KAAK,CAAC,EACrC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE5C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,IAAI;IAEP;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACzC,IAAI,EAAE,IAAI,GACT,YAAY,CAAC,KAAK,CAAC;CA4CvB;AAED,qBAAa,2BAA2B,CACtC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,mBAAmB,CAAC,KAAK,CAAC,EACvC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC9C,YAAW,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE3C,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,IAAI,EAAE,OAAO,EAAE,EACf,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GACjC,IAAI;CAuHR;AAED;;;;;;;;;;;GAWG;AAEH,qBAAa,yBAAyB,CACpC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,uBAAuB,CAAC,KAAK,CAAC,EAC3C,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAEnC,SAAQ,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC9C,YAAW,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEzC,OAAO,CACd,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,OAAO,EAAE,EAChB,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACrC,WAAW,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAChC,IAAI;IAkCE,WAAW,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAClD,IAAI,EAAE,IAAI,GACT,YAAY,CAAC,KAAK,CAAC;CAoEvB"}
|