bupkis 0.11.1 → 0.12.0
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 +68 -91
- package/dist/commonjs/assertion/assertion-async.d.ts.map +1 -1
- package/dist/commonjs/assertion/assertion-async.js +32 -9
- package/dist/commonjs/assertion/assertion-async.js.map +1 -1
- package/dist/commonjs/assertion/assertion-standard-schema-async.d.ts +64 -0
- package/dist/commonjs/assertion/assertion-standard-schema-async.d.ts.map +1 -0
- package/dist/commonjs/assertion/assertion-standard-schema-async.js +155 -0
- package/dist/commonjs/assertion/assertion-standard-schema-async.js.map +1 -0
- package/dist/commonjs/assertion/assertion-standard-schema-sync.d.ts +64 -0
- package/dist/commonjs/assertion/assertion-standard-schema-sync.d.ts.map +1 -0
- package/dist/commonjs/assertion/assertion-standard-schema-sync.js +164 -0
- package/dist/commonjs/assertion/assertion-standard-schema-sync.js.map +1 -0
- package/dist/commonjs/assertion/assertion-sync.d.ts.map +1 -1
- package/dist/commonjs/assertion/assertion-sync.js +38 -5
- package/dist/commonjs/assertion/assertion-sync.js.map +1 -1
- package/dist/commonjs/assertion/assertion-types.d.ts +82 -14
- package/dist/commonjs/assertion/assertion-types.d.ts.map +1 -1
- package/dist/commonjs/assertion/assertion.d.ts +11 -0
- package/dist/commonjs/assertion/assertion.d.ts.map +1 -1
- package/dist/commonjs/assertion/assertion.js +30 -0
- package/dist/commonjs/assertion/assertion.js.map +1 -1
- package/dist/commonjs/assertion/create.d.ts.map +1 -1
- package/dist/commonjs/assertion/create.js +10 -2
- package/dist/commonjs/assertion/create.js.map +1 -1
- package/dist/commonjs/assertion/impl/sync-basic.d.ts +37 -37
- package/dist/commonjs/assertion/impl/sync-basic.d.ts.map +1 -1
- package/dist/commonjs/assertion/impl/sync-collection.d.ts +3 -3
- package/dist/commonjs/assertion/impl/sync-collection.d.ts.map +1 -1
- package/dist/commonjs/assertion/impl/sync-date.d.ts +1 -1
- package/dist/commonjs/assertion/impl/sync-date.d.ts.map +1 -1
- package/dist/commonjs/assertion/impl/sync-esoteric.d.ts +3 -3
- package/dist/commonjs/assertion/impl/sync-esoteric.d.ts.map +1 -1
- package/dist/commonjs/assertion/impl/sync-parametric.d.ts +1 -1
- package/dist/commonjs/assertion/impl/sync.d.ts +18 -18
- package/dist/commonjs/assertion/impl/sync.d.ts.map +1 -1
- package/dist/commonjs/assertion/slotify.js +25 -7
- package/dist/commonjs/assertion/slotify.js.map +1 -1
- package/dist/commonjs/bootstrap.d.ts +9 -9
- package/dist/commonjs/diff.d.ts.map +1 -1
- package/dist/commonjs/diff.js +14 -21
- package/dist/commonjs/diff.js.map +1 -1
- package/dist/commonjs/guards.d.ts +16 -0
- package/dist/commonjs/guards.d.ts.map +1 -1
- package/dist/commonjs/guards.js +27 -1
- package/dist/commonjs/guards.js.map +1 -1
- package/dist/commonjs/index.d.ts +22 -15
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/internal-schema.d.ts.map +1 -1
- package/dist/commonjs/internal-schema.js +30 -12
- package/dist/commonjs/internal-schema.js.map +1 -1
- package/dist/commonjs/standard-schema.d.ts +192 -0
- package/dist/commonjs/standard-schema.d.ts.map +1 -0
- package/dist/commonjs/standard-schema.js +13 -0
- package/dist/commonjs/standard-schema.js.map +1 -0
- package/dist/commonjs/types.d.ts +165 -13
- package/dist/commonjs/types.d.ts.map +1 -1
- package/dist/esm/assertion/assertion-async.d.ts.map +1 -1
- package/dist/esm/assertion/assertion-async.js +33 -10
- package/dist/esm/assertion/assertion-async.js.map +1 -1
- package/dist/esm/assertion/assertion-standard-schema-async.d.ts +64 -0
- package/dist/esm/assertion/assertion-standard-schema-async.d.ts.map +1 -0
- package/dist/esm/assertion/assertion-standard-schema-async.js +151 -0
- package/dist/esm/assertion/assertion-standard-schema-async.js.map +1 -0
- package/dist/esm/assertion/assertion-standard-schema-sync.d.ts +64 -0
- package/dist/esm/assertion/assertion-standard-schema-sync.d.ts.map +1 -0
- package/dist/esm/assertion/assertion-standard-schema-sync.js +160 -0
- package/dist/esm/assertion/assertion-standard-schema-sync.js.map +1 -0
- package/dist/esm/assertion/assertion-sync.d.ts.map +1 -1
- package/dist/esm/assertion/assertion-sync.js +39 -6
- package/dist/esm/assertion/assertion-sync.js.map +1 -1
- package/dist/esm/assertion/assertion-types.d.ts +82 -14
- package/dist/esm/assertion/assertion-types.d.ts.map +1 -1
- package/dist/esm/assertion/assertion.d.ts +11 -0
- package/dist/esm/assertion/assertion.d.ts.map +1 -1
- package/dist/esm/assertion/assertion.js +30 -0
- package/dist/esm/assertion/assertion.js.map +1 -1
- package/dist/esm/assertion/create.d.ts.map +1 -1
- package/dist/esm/assertion/create.js +11 -3
- package/dist/esm/assertion/create.js.map +1 -1
- package/dist/esm/assertion/impl/sync-basic.d.ts +37 -37
- package/dist/esm/assertion/impl/sync-basic.d.ts.map +1 -1
- package/dist/esm/assertion/impl/sync-collection.d.ts +3 -3
- package/dist/esm/assertion/impl/sync-collection.d.ts.map +1 -1
- package/dist/esm/assertion/impl/sync-date.d.ts +1 -1
- package/dist/esm/assertion/impl/sync-date.d.ts.map +1 -1
- package/dist/esm/assertion/impl/sync-esoteric.d.ts +3 -3
- package/dist/esm/assertion/impl/sync-esoteric.d.ts.map +1 -1
- package/dist/esm/assertion/impl/sync-parametric.d.ts +1 -1
- package/dist/esm/assertion/impl/sync.d.ts +18 -18
- package/dist/esm/assertion/impl/sync.d.ts.map +1 -1
- package/dist/esm/assertion/slotify.js +26 -8
- package/dist/esm/assertion/slotify.js.map +1 -1
- package/dist/esm/bootstrap.d.ts +9 -9
- package/dist/esm/diff.d.ts.map +1 -1
- package/dist/esm/diff.js +14 -21
- package/dist/esm/diff.js.map +1 -1
- package/dist/esm/guards.d.ts +16 -0
- package/dist/esm/guards.d.ts.map +1 -1
- package/dist/esm/guards.js +25 -0
- package/dist/esm/guards.js.map +1 -1
- package/dist/esm/index.d.ts +22 -15
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal-schema.d.ts.map +1 -1
- package/dist/esm/internal-schema.js +31 -13
- package/dist/esm/internal-schema.js.map +1 -1
- package/dist/esm/standard-schema.d.ts +192 -0
- package/dist/esm/standard-schema.d.ts.map +1 -0
- package/dist/esm/standard-schema.js +12 -0
- package/dist/esm/standard-schema.js.map +1 -0
- package/dist/esm/types.d.ts +165 -13
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +26 -18
- package/src/assertion/assertion-async.ts +54 -14
- package/src/assertion/assertion-standard-schema-async.ts +202 -0
- package/src/assertion/assertion-standard-schema-sync.ts +214 -0
- package/src/assertion/assertion-sync.ts +65 -10
- package/src/assertion/assertion-types.ts +113 -13
- package/src/assertion/assertion.ts +40 -0
- package/src/assertion/create.ts +11 -5
- package/src/assertion/slotify.ts +29 -7
- package/src/diff.ts +14 -29
- package/src/guards.ts +29 -0
- package/src/index.ts +16 -6
- package/src/internal-schema.ts +36 -16
- package/src/standard-schema.ts +214 -0
- package/src/types.ts +176 -14
package/dist/commonjs/types.d.ts
CHANGED
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
import type { ArrayValues, TupleToUnion, Constructor as TypeFestConstructor, UnionToIntersection } from 'type-fest';
|
|
21
21
|
import type { z } from 'zod/v4';
|
|
22
22
|
import type { AnyAssertion, AnyAsyncAssertion, AnyAsyncAssertions, AnySyncAssertion, AnySyncAssertions, AssertionPart, AssertionParts, AssertionSlot, BuiltinAsyncAssertions, BuiltinSyncAssertions, CreateAssertionFn, CreateAsyncAssertionFn, NoNeverTuple, PhraseLiteral, PhraseLiteralChoice, PhraseLiteralChoiceSlot, PhraseLiteralSlot } from './assertion/assertion-types.js';
|
|
23
|
+
import type { StandardSchemaV1 } from './standard-schema.js';
|
|
24
|
+
import type { ValueToSchemaOptions } from './value-to-schema.js';
|
|
23
25
|
import { type kExpectIt } from './constant.js';
|
|
24
26
|
/**
|
|
25
27
|
* Creates a negated version of a tuple of
|
|
@@ -67,6 +69,62 @@ export interface BaseExpect {
|
|
|
67
69
|
*/
|
|
68
70
|
fail: FailFn;
|
|
69
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Configuration for valueToSchema benchmark generation.
|
|
74
|
+
*/
|
|
75
|
+
export interface BenchmarkConfig {
|
|
76
|
+
/** Optional filter for input categories */
|
|
77
|
+
categories?: string[];
|
|
78
|
+
/** Complexity levels to test */
|
|
79
|
+
complexityLevels: ComplexityLevel[];
|
|
80
|
+
/** Number of benchmark iterations (1-10000) */
|
|
81
|
+
iterations: number;
|
|
82
|
+
/** ValueToSchemaOptions combinations to test */
|
|
83
|
+
options?: Partial<ValueToSchemaOptions>[];
|
|
84
|
+
/** Number of test data samples to generate (10-10000) */
|
|
85
|
+
sampleSize: number;
|
|
86
|
+
/** Benchmark timeout in milliseconds (1000-300000) */
|
|
87
|
+
timeout: number;
|
|
88
|
+
/** Number of warmup iterations (1-100) */
|
|
89
|
+
warmupIterations: number;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Type representing a dot-notation or bracket-notation keypath for accessing
|
|
93
|
+
* nested object properties. Uses recursive template literal types to validate
|
|
94
|
+
* keypath syntax.
|
|
95
|
+
*
|
|
96
|
+
* Supports paths like:
|
|
97
|
+
*
|
|
98
|
+
* - 'foo.bar'
|
|
99
|
+
* - 'foo[0]'
|
|
100
|
+
* - 'foo["bar-baz"]'
|
|
101
|
+
* - 'foo.bar[1].baz'
|
|
102
|
+
*
|
|
103
|
+
* @public
|
|
104
|
+
*/
|
|
105
|
+
/**
|
|
106
|
+
* Complete benchmark result.
|
|
107
|
+
*/
|
|
108
|
+
export interface BenchmarkResult {
|
|
109
|
+
/** Computed insights and bottleneck identification */
|
|
110
|
+
analysis: PerformanceAnalysis;
|
|
111
|
+
/** Environment details when benchmark was run */
|
|
112
|
+
executionContext: ExecutionContext;
|
|
113
|
+
/** Total execution time in milliseconds */
|
|
114
|
+
executionTime: number;
|
|
115
|
+
/** Metadata about the benchmark run */
|
|
116
|
+
metadata: {
|
|
117
|
+
nodeVersion: string;
|
|
118
|
+
timestamp: string;
|
|
119
|
+
version: string;
|
|
120
|
+
};
|
|
121
|
+
/** Individual measurement results */
|
|
122
|
+
results: PerformanceMetrics[];
|
|
123
|
+
/** Benchmark suite identifier */
|
|
124
|
+
suiteId: string;
|
|
125
|
+
}
|
|
126
|
+
export type * from './assertion/assertion-types.js';
|
|
127
|
+
export type { StandardSchemaV1 };
|
|
70
128
|
/**
|
|
71
129
|
* The main API as returned by a {@link UseFn}.
|
|
72
130
|
*
|
|
@@ -108,26 +166,15 @@ export interface Bupkis<BaseSyncAssertions extends AnySyncAssertions, BaseAsyncA
|
|
|
108
166
|
use: UseFn<Concat<BaseSyncAssertions, ExtendedSyncAssertions>, Concat<BaseAsyncAssertions, ExtendedAsyncAssertions>>;
|
|
109
167
|
}
|
|
110
168
|
/**
|
|
111
|
-
*
|
|
112
|
-
* nested object properties. Uses recursive template literal types to validate
|
|
113
|
-
* keypath syntax.
|
|
114
|
-
*
|
|
115
|
-
* Supports paths like:
|
|
116
|
-
*
|
|
117
|
-
* - 'foo.bar'
|
|
118
|
-
* - 'foo[0]'
|
|
119
|
-
* - 'foo["bar-baz"]'
|
|
120
|
-
* - 'foo.bar[1].baz'
|
|
121
|
-
*
|
|
122
|
-
* @public
|
|
169
|
+
* Complexity levels for test data generation.
|
|
123
170
|
*/
|
|
171
|
+
export type ComplexityLevel = 'complex' | 'medium' | 'simple';
|
|
124
172
|
/**
|
|
125
173
|
* Helper type to concatenate two tuples
|
|
126
174
|
*
|
|
127
175
|
* @group Utility Types
|
|
128
176
|
*/
|
|
129
177
|
export type Concat<TupleA extends readonly unknown[], TupleB extends readonly unknown[]> = readonly [...TupleA, ...TupleB];
|
|
130
|
-
export type * from './assertion/assertion-types.js';
|
|
131
178
|
/**
|
|
132
179
|
* A constructor based on {@link TypeFestConstructor type-fest's Constructor}
|
|
133
180
|
* with a default instance type argument.
|
|
@@ -136,6 +183,32 @@ export type * from './assertion/assertion-types.js';
|
|
|
136
183
|
*/
|
|
137
184
|
export type Constructor<Instance = any, Args extends unknown[] = any[]> = TypeFestConstructor<Instance, Args>;
|
|
138
185
|
export type DefFromZodType<T extends z.core.$ZodType | z.ZodType> = T extends z.ZodType ? T['def'] : T extends z.core.$ZodType ? T['_zod']['def'] : never;
|
|
186
|
+
/**
|
|
187
|
+
* Execution context for benchmark runs.
|
|
188
|
+
*/
|
|
189
|
+
export interface ExecutionContext {
|
|
190
|
+
/** CPU model */
|
|
191
|
+
cpuModel: string;
|
|
192
|
+
/** Total memory */
|
|
193
|
+
memoryTotal: number;
|
|
194
|
+
/** Node.js version */
|
|
195
|
+
nodeVersion: string;
|
|
196
|
+
/** Platform information */
|
|
197
|
+
platform: string;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Execution time statistics.
|
|
201
|
+
*/
|
|
202
|
+
export interface ExecutionTimeStats {
|
|
203
|
+
/** Mean execution time */
|
|
204
|
+
mean: number;
|
|
205
|
+
/** Median execution time */
|
|
206
|
+
median: number;
|
|
207
|
+
/** 95th percentile execution time */
|
|
208
|
+
p95: number;
|
|
209
|
+
/** 99th percentile execution time */
|
|
210
|
+
p99: number;
|
|
211
|
+
}
|
|
139
212
|
/**
|
|
140
213
|
* The main synchronous assertion function.
|
|
141
214
|
*
|
|
@@ -526,6 +599,21 @@ export type FilterSyncAssertions<MixedAssertions extends readonly AnyAssertion[]
|
|
|
526
599
|
infer MixedAssertion extends AnyAssertion,
|
|
527
600
|
...infer Rest extends readonly AnyAssertion[]
|
|
528
601
|
] ? MixedAssertion extends AnySyncAssertion ? readonly [MixedAssertion, ...FilterSyncAssertions<Rest>] : FilterSyncAssertions<Rest> : readonly [];
|
|
602
|
+
/**
|
|
603
|
+
* Options for test data generation.
|
|
604
|
+
*/
|
|
605
|
+
export interface GeneratorOptions {
|
|
606
|
+
/** Whether to include edge cases (NaN, Infinity, etc.) */
|
|
607
|
+
includeEdgeCases?: boolean;
|
|
608
|
+
/** Maximum array size */
|
|
609
|
+
maxArrayLength?: number;
|
|
610
|
+
/** Maximum nesting depth for recursive structures */
|
|
611
|
+
maxDepth?: number;
|
|
612
|
+
/** Maximum object property count */
|
|
613
|
+
maxObjectProperties?: number;
|
|
614
|
+
/** Optional seed for reproducible generation */
|
|
615
|
+
seedValue?: number;
|
|
616
|
+
}
|
|
529
617
|
/**
|
|
530
618
|
* Represents a dot-notation or bracket-notation keypath for accessing nested
|
|
531
619
|
* object properties.
|
|
@@ -573,6 +661,21 @@ export type MapExpectSlots<Parts extends readonly AssertionPart[]> = Parts exten
|
|
|
573
661
|
AssertionSlot<First> extends PhraseLiteralSlot<infer StringLiteral> ? Negation<StringLiteral> | StringLiteral : AssertionSlot<First> extends PhraseLiteralChoiceSlot<infer StringLiterals> ? ArrayValues<StringLiterals> | Negation<ArrayValues<StringLiterals>> : AssertionSlot<First> extends z.ZodType ? z.infer<AssertionSlot<First>> : never,
|
|
574
662
|
...MapExpectSlots<Rest>
|
|
575
663
|
] : readonly [];
|
|
664
|
+
/**
|
|
665
|
+
* @groupDescription Benchmark Types
|
|
666
|
+
* Types for valueToSchema() benchmark functionality.
|
|
667
|
+
*/
|
|
668
|
+
/**
|
|
669
|
+
* Memory usage statistics.
|
|
670
|
+
*/
|
|
671
|
+
export interface MemoryStats {
|
|
672
|
+
/** External memory */
|
|
673
|
+
external: number;
|
|
674
|
+
/** Total heap memory */
|
|
675
|
+
heapTotal: number;
|
|
676
|
+
/** Heap memory used */
|
|
677
|
+
heapUsed: number;
|
|
678
|
+
}
|
|
576
679
|
/**
|
|
577
680
|
* Makes tuple types accept both mutable and readonly variants.
|
|
578
681
|
*
|
|
@@ -629,6 +732,55 @@ export type MutableOrReadonly<Tuple extends readonly unknown[]> = Tuple extends
|
|
|
629
732
|
* @see {@link MapExpectSlots} for how negation is incorporated into function signatures
|
|
630
733
|
*/
|
|
631
734
|
export type Negation<S extends string> = `not ${S}`;
|
|
735
|
+
/**
|
|
736
|
+
* Performance analysis results.
|
|
737
|
+
*/
|
|
738
|
+
export interface PerformanceAnalysis {
|
|
739
|
+
/** Identified bottlenecks */
|
|
740
|
+
bottlenecks: Array<{
|
|
741
|
+
category: string;
|
|
742
|
+
impact: 'high' | 'low' | 'medium';
|
|
743
|
+
opsPerSecond: number;
|
|
744
|
+
reason: string;
|
|
745
|
+
}>;
|
|
746
|
+
/** Statistical outliers */
|
|
747
|
+
outliers: Array<{
|
|
748
|
+
category: string;
|
|
749
|
+
deviation: number;
|
|
750
|
+
options: ValueToSchemaOptions;
|
|
751
|
+
value: number;
|
|
752
|
+
}>;
|
|
753
|
+
/** Summary statistics */
|
|
754
|
+
summary: {
|
|
755
|
+
averageOpsPerSecond: number;
|
|
756
|
+
fastestCategory: string;
|
|
757
|
+
slowestCategory: string;
|
|
758
|
+
totalExecutionTime: number;
|
|
759
|
+
};
|
|
760
|
+
/** Performance trends */
|
|
761
|
+
trends: Array<{
|
|
762
|
+
description: string;
|
|
763
|
+
factor: string;
|
|
764
|
+
impact: number;
|
|
765
|
+
}>;
|
|
766
|
+
}
|
|
767
|
+
/**
|
|
768
|
+
* Performance metrics for a benchmark run.
|
|
769
|
+
*/
|
|
770
|
+
export interface PerformanceMetrics {
|
|
771
|
+
/** Timing statistics */
|
|
772
|
+
executionTime: ExecutionTimeStats;
|
|
773
|
+
/** Category of input being measured */
|
|
774
|
+
inputCategory: string;
|
|
775
|
+
/** Memory allocation data (if available) */
|
|
776
|
+
memoryUsage?: MemoryStats;
|
|
777
|
+
/** Throughput measurement (operations per second) */
|
|
778
|
+
operationsPerSecond: number;
|
|
779
|
+
/** Configuration used for this measurement */
|
|
780
|
+
options: ValueToSchemaOptions;
|
|
781
|
+
/** When measurement was taken */
|
|
782
|
+
timestamp: Date;
|
|
783
|
+
}
|
|
632
784
|
/**
|
|
633
785
|
* Converts `AssertionParts` to complete function parameter types for expect
|
|
634
786
|
* functions.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-async.d.ts","sourceRoot":"","sources":["../../../src/assertion/assertion-async.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assertion-async.d.ts","sourceRoot":"","sources":["../../../src/assertion/assertion-async.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAEzB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,8BAAsB,oBAAoB,CACtC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,EACtC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE7C,QAAQ,CAAC,YAAY,CACnB,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,OAAO,CAAC,IAAI,CAAC;IAEV,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACpD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;CAyChC;AACD;;;;GAIG;AACH;;;;;;;;GAQG;AAEH,qBAAa,4BAA4B,CACrC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,oBAAoB,CAAC,KAAK,CAAC,EACxC,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEtC,YAAY,CACzB,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,OAAO,CAAC,IAAI,CAAC;CAiGjB;AAED;;;;;;;;;;;GAWG;AAEH,qBAAa,0BAA0B,CACnC,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,wBAAwB,CAAC,KAAK,CAAC,EAC5C,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC/C,YAAW,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAEpC,YAAY,CACzB,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,OAAO,CAAC,IAAI,CAAC;IA8BD,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EAC7D,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAyE/B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAehC"}
|
|
@@ -2,7 +2,7 @@ import { inspect } from 'util';
|
|
|
2
2
|
import z from 'zod/v4';
|
|
3
3
|
import { kStringLiteral } from '../constant.js';
|
|
4
4
|
import { AssertionError, AssertionImplementationError } from '../error.js';
|
|
5
|
-
import { isA, isBoolean, isError, isZodType } from '../guards.js';
|
|
5
|
+
import { isA, isBoolean, isError, isStandardSchema, isZodType, } from '../guards.js';
|
|
6
6
|
import { isAssertionFailure, isAssertionParseRequest, } from '../internal-schema.js';
|
|
7
7
|
import { BupkisRegistry } from '../metadata.js';
|
|
8
8
|
import { BupkisAssertion } from './assertion.js';
|
|
@@ -90,6 +90,15 @@ export class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
|
|
|
90
90
|
throw error;
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
+
else if (isStandardSchema(result)) {
|
|
94
|
+
const validationResult = result['~standard'].validate(parsedValues[0]);
|
|
95
|
+
const finalResult = validationResult instanceof Promise
|
|
96
|
+
? await validationResult
|
|
97
|
+
: validationResult;
|
|
98
|
+
if (finalResult.issues) {
|
|
99
|
+
throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, parsedValues);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
93
102
|
else if (isBoolean(result)) {
|
|
94
103
|
if (!result) {
|
|
95
104
|
throw new AssertionError({
|
|
@@ -103,15 +112,27 @@ export class BupkisAssertionFunctionAsync extends BupkisAssertionAsync {
|
|
|
103
112
|
}
|
|
104
113
|
else if (isAssertionParseRequest(result)) {
|
|
105
114
|
const { asyncSchema, schema, subject } = result;
|
|
106
|
-
|
|
107
|
-
if (
|
|
108
|
-
zodResult
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
115
|
+
const schemaToUse = schema ?? asyncSchema;
|
|
116
|
+
if (isZodType(schemaToUse)) {
|
|
117
|
+
let zodResult;
|
|
118
|
+
if (schema) {
|
|
119
|
+
zodResult = schemaToUse.safeParse(subject);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
zodResult = await schemaToUse.safeParseAsync(subject);
|
|
123
|
+
}
|
|
124
|
+
if (!zodResult.success) {
|
|
125
|
+
throw this.fromZodError(zodResult.error, stackStartFn, subject);
|
|
126
|
+
}
|
|
112
127
|
}
|
|
113
|
-
if (
|
|
114
|
-
|
|
128
|
+
else if (isStandardSchema(schemaToUse)) {
|
|
129
|
+
const validationResult = schemaToUse['~standard'].validate(subject);
|
|
130
|
+
const finalResult = validationResult instanceof Promise
|
|
131
|
+
? await validationResult
|
|
132
|
+
: validationResult;
|
|
133
|
+
if (finalResult.issues) {
|
|
134
|
+
throw this.fromStandardSchemaIssues(finalResult.issues, stackStartFn, subject);
|
|
135
|
+
}
|
|
115
136
|
}
|
|
116
137
|
}
|
|
117
138
|
else if (isAssertionFailure(result)) {
|
|
@@ -148,7 +169,9 @@ export class BupkisAssertionSchemaAsync extends BupkisAssertionAsync {
|
|
|
148
169
|
: undefined;
|
|
149
170
|
if (cachedValidation && !cachedValidation.success) {
|
|
150
171
|
// Subject validation failed during parseValuesAsync, throw the cached error
|
|
151
|
-
|
|
172
|
+
if ('error' in cachedValidation) {
|
|
173
|
+
throw this.fromZodError(cachedValidation.error, stackStartFn, parsedValues);
|
|
174
|
+
}
|
|
152
175
|
}
|
|
153
176
|
// Fall back to standard validation if no cached result
|
|
154
177
|
const [subject] = parsedValues;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-async.js","sourceRoot":"","sources":["../../../src/assertion/assertion-async.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"assertion-async.js","sourceRoot":"","sources":["../../../src/assertion/assertion-async.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asynchronous Standard Schema assertion implementation.
|
|
3
|
+
*
|
|
4
|
+
* This module provides the `BupkisAssertionStandardSchemaAsync` class for
|
|
5
|
+
* assertions implemented using Standard Schema v1 compliant validators that may
|
|
6
|
+
* perform asynchronous validation.
|
|
7
|
+
*
|
|
8
|
+
* @packageDocumentation
|
|
9
|
+
*/
|
|
10
|
+
import type { StandardSchemaV1 } from '../standard-schema.js';
|
|
11
|
+
import type { AssertionParts, AssertionSlots, AssertionStandardSchemaAsync, ParsedResult, ParsedValues } from './assertion-types.js';
|
|
12
|
+
import { BupkisAssertion } from './assertion.js';
|
|
13
|
+
/**
|
|
14
|
+
* An asynchronous assertion implemented using a Standard Schema v1 validator.
|
|
15
|
+
*
|
|
16
|
+
* This class handles async schema-based assertions where the implementation is
|
|
17
|
+
* any Standard Schema compliant validator that may perform asynchronous
|
|
18
|
+
* validation. It optimizes validation by caching the subject validation result
|
|
19
|
+
* during `parseValuesAsync()` to avoid double parsing.
|
|
20
|
+
*
|
|
21
|
+
* @template Parts - The assertion parts tuple defining structure
|
|
22
|
+
* @template Impl - The Standard Schema implementation
|
|
23
|
+
* @template Slots - The derived validation slots
|
|
24
|
+
*/
|
|
25
|
+
export declare class BupkisAssertionStandardSchemaAsync<Parts extends AssertionParts, Impl extends StandardSchemaV1, Slots extends AssertionSlots<Parts>> extends BupkisAssertion<Parts, Impl, Slots> implements AssertionStandardSchemaAsync<Parts, Impl, Slots> {
|
|
26
|
+
/**
|
|
27
|
+
* Executes the assertion asynchronously against validated values.
|
|
28
|
+
*
|
|
29
|
+
* If validation was already performed during `parseValuesAsync()` and cached,
|
|
30
|
+
* reuses that result. Otherwise, performs validation using the Standard
|
|
31
|
+
* Schema's validate() method (which may return a Promise).
|
|
32
|
+
*
|
|
33
|
+
* @param parsedValues - The parsed and validated values
|
|
34
|
+
* @param _args - Original raw arguments (unused)
|
|
35
|
+
* @param stackStartFn - Function to use as stack trace start point
|
|
36
|
+
* @param parseResult - Optional cached parse result from `parseValuesAsync()`
|
|
37
|
+
* @throws {AssertionError} If validation fails
|
|
38
|
+
*/
|
|
39
|
+
executeAsync(parsedValues: ParsedValues<Parts>, _args: unknown[], stackStartFn: (...args: any[]) => any, parseResult?: ParsedResult<Parts>): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Parses raw arguments asynchronously against slots with optimized caching.
|
|
42
|
+
*
|
|
43
|
+
* For simple schema assertions (subject + phrase literals only), this method
|
|
44
|
+
* validates the subject during parsing and caches the result to avoid double
|
|
45
|
+
* validation in `executeAsync()`.
|
|
46
|
+
*
|
|
47
|
+
* @param args - Raw arguments provided to `expectAsync()`
|
|
48
|
+
* @returns Promise resolving to parse result with cached validation
|
|
49
|
+
*/
|
|
50
|
+
parseValuesAsync<Args extends readonly unknown[]>(args: Args): Promise<ParsedResult<Parts>>;
|
|
51
|
+
/**
|
|
52
|
+
* Determines if this is a simple schema assertion eligible for optimization.
|
|
53
|
+
*
|
|
54
|
+
* Returns true when the assertion has:
|
|
55
|
+
*
|
|
56
|
+
* - Exactly one subject slot (unknown/any type)
|
|
57
|
+
* - Only phrase literal slots after the subject
|
|
58
|
+
* - No complex argument processing
|
|
59
|
+
*
|
|
60
|
+
* @returns True if optimization can be applied
|
|
61
|
+
*/
|
|
62
|
+
private isSimpleSchemaAssertion;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=assertion-standard-schema-async.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertion-standard-schema-async.d.ts","sourceRoot":"","sources":["../../../src/assertion/assertion-standard-schema-async.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,4BAA4B,EAC5B,YAAY,EAEZ,YAAY,EACb,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,qBAAa,kCAAkC,CAC3C,KAAK,SAAS,cAAc,EAC5B,IAAI,SAAS,gBAAgB,EAC7B,KAAK,SAAS,cAAc,CAAC,KAAK,CAAC,CAErC,SAAQ,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAC1C,YAAW,4BAA4B,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;IAE3D;;;;;;;;;;;;OAYG;IACG,YAAY,CAChB,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,OAAO,CAAC,IAAI,CAAC;IA4BhB;;;;;;;;;OASG;IACG,gBAAgB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,EACpD,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IA2E/B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB;CAahC"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asynchronous Standard Schema assertion implementation.
|
|
3
|
+
*
|
|
4
|
+
* This module provides the `BupkisAssertionStandardSchemaAsync` class for
|
|
5
|
+
* assertions implemented using Standard Schema v1 compliant validators that may
|
|
6
|
+
* perform asynchronous validation.
|
|
7
|
+
*
|
|
8
|
+
* @packageDocumentation
|
|
9
|
+
*/
|
|
10
|
+
import { kStringLiteral } from '../constant.js';
|
|
11
|
+
import { BupkisRegistry } from '../metadata.js';
|
|
12
|
+
import { BupkisAssertion } from './assertion.js';
|
|
13
|
+
/**
|
|
14
|
+
* An asynchronous assertion implemented using a Standard Schema v1 validator.
|
|
15
|
+
*
|
|
16
|
+
* This class handles async schema-based assertions where the implementation is
|
|
17
|
+
* any Standard Schema compliant validator that may perform asynchronous
|
|
18
|
+
* validation. It optimizes validation by caching the subject validation result
|
|
19
|
+
* during `parseValuesAsync()` to avoid double parsing.
|
|
20
|
+
*
|
|
21
|
+
* @template Parts - The assertion parts tuple defining structure
|
|
22
|
+
* @template Impl - The Standard Schema implementation
|
|
23
|
+
* @template Slots - The derived validation slots
|
|
24
|
+
*/
|
|
25
|
+
export class BupkisAssertionStandardSchemaAsync extends BupkisAssertion {
|
|
26
|
+
/**
|
|
27
|
+
* Executes the assertion asynchronously against validated values.
|
|
28
|
+
*
|
|
29
|
+
* If validation was already performed during `parseValuesAsync()` and cached,
|
|
30
|
+
* reuses that result. Otherwise, performs validation using the Standard
|
|
31
|
+
* Schema's validate() method (which may return a Promise).
|
|
32
|
+
*
|
|
33
|
+
* @param parsedValues - The parsed and validated values
|
|
34
|
+
* @param _args - Original raw arguments (unused)
|
|
35
|
+
* @param stackStartFn - Function to use as stack trace start point
|
|
36
|
+
* @param parseResult - Optional cached parse result from `parseValuesAsync()`
|
|
37
|
+
* @throws {AssertionError} If validation fails
|
|
38
|
+
*/
|
|
39
|
+
async executeAsync(parsedValues, _args, stackStartFn, parseResult) {
|
|
40
|
+
const cachedValidation = parseResult?.success
|
|
41
|
+
? parseResult.subjectValidationResult
|
|
42
|
+
: undefined;
|
|
43
|
+
if (cachedValidation && !cachedValidation.success) {
|
|
44
|
+
if ('issues' in cachedValidation) {
|
|
45
|
+
throw this.fromStandardSchemaIssues(cachedValidation.issues, stackStartFn, parsedValues);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const [subject] = parsedValues;
|
|
49
|
+
const result = this.impl['~standard'].validate(subject);
|
|
50
|
+
const validationResult = result instanceof Promise ? await result : result;
|
|
51
|
+
if (validationResult.issues) {
|
|
52
|
+
throw this.fromStandardSchemaIssues(validationResult.issues, stackStartFn, parsedValues);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Parses raw arguments asynchronously against slots with optimized caching.
|
|
57
|
+
*
|
|
58
|
+
* For simple schema assertions (subject + phrase literals only), this method
|
|
59
|
+
* validates the subject during parsing and caches the result to avoid double
|
|
60
|
+
* validation in `executeAsync()`.
|
|
61
|
+
*
|
|
62
|
+
* @param args - Raw arguments provided to `expectAsync()`
|
|
63
|
+
* @returns Promise resolving to parse result with cached validation
|
|
64
|
+
*/
|
|
65
|
+
async parseValuesAsync(args) {
|
|
66
|
+
const { slots } = this;
|
|
67
|
+
const parsedValues = [];
|
|
68
|
+
const mismatch = this.maybeParseValuesArgMismatch(args);
|
|
69
|
+
if (mismatch) {
|
|
70
|
+
return mismatch;
|
|
71
|
+
}
|
|
72
|
+
let exactMatch = true;
|
|
73
|
+
let subjectValidationResult;
|
|
74
|
+
for (let i = 0; i < slots.length; i++) {
|
|
75
|
+
const slot = slots[i];
|
|
76
|
+
const arg = args[i];
|
|
77
|
+
const parsedLiteralResult = this.parseSlotForLiteral(slot, i, arg);
|
|
78
|
+
if (parsedLiteralResult === true) {
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
else if (parsedLiteralResult !== false) {
|
|
82
|
+
return parsedLiteralResult;
|
|
83
|
+
}
|
|
84
|
+
if (i === 0 &&
|
|
85
|
+
(slot.def.type === 'unknown' || slot.def.type === 'any') &&
|
|
86
|
+
this.isSimpleSchemaAssertion()) {
|
|
87
|
+
const result = this.impl['~standard'].validate(arg);
|
|
88
|
+
const validationResult = result instanceof Promise ? await result : result;
|
|
89
|
+
if (validationResult.issues) {
|
|
90
|
+
subjectValidationResult = {
|
|
91
|
+
issues: validationResult.issues,
|
|
92
|
+
success: false,
|
|
93
|
+
};
|
|
94
|
+
parsedValues.push(arg);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
subjectValidationResult = {
|
|
98
|
+
data: validationResult.value,
|
|
99
|
+
success: true,
|
|
100
|
+
};
|
|
101
|
+
parsedValues.push(validationResult.value);
|
|
102
|
+
}
|
|
103
|
+
exactMatch = false;
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
if (slot.def.type === 'unknown' || slot.def.type === 'any') {
|
|
107
|
+
parsedValues.push(arg);
|
|
108
|
+
exactMatch = false;
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
const result = await slot.safeParseAsync(arg);
|
|
112
|
+
if (!result.success) {
|
|
113
|
+
return {
|
|
114
|
+
success: false,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
parsedValues.push(result.data);
|
|
118
|
+
}
|
|
119
|
+
const result = {
|
|
120
|
+
exactMatch,
|
|
121
|
+
parsedValues: parsedValues,
|
|
122
|
+
success: true,
|
|
123
|
+
};
|
|
124
|
+
if (subjectValidationResult) {
|
|
125
|
+
result.subjectValidationResult = subjectValidationResult;
|
|
126
|
+
}
|
|
127
|
+
return result;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Determines if this is a simple schema assertion eligible for optimization.
|
|
131
|
+
*
|
|
132
|
+
* Returns true when the assertion has:
|
|
133
|
+
*
|
|
134
|
+
* - Exactly one subject slot (unknown/any type)
|
|
135
|
+
* - Only phrase literal slots after the subject
|
|
136
|
+
* - No complex argument processing
|
|
137
|
+
*
|
|
138
|
+
* @returns True if optimization can be applied
|
|
139
|
+
*/
|
|
140
|
+
isSimpleSchemaAssertion() {
|
|
141
|
+
const hasSubjectSlot = this.slots.length > 0 &&
|
|
142
|
+
(this.slots[0]?.def.type === 'unknown' ||
|
|
143
|
+
this.slots[0]?.def.type === 'any');
|
|
144
|
+
const allOtherSlotsAreLiterals = this.slots.slice(1).every((slot) => {
|
|
145
|
+
const meta = BupkisRegistry.get(slot) ?? {};
|
|
146
|
+
return kStringLiteral in meta;
|
|
147
|
+
});
|
|
148
|
+
return hasSubjectSlot && allOtherSlotsAreLiterals;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=assertion-standard-schema-async.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertion-standard-schema-async.js","sourceRoot":"","sources":["../../../src/assertion/assertion-standard-schema-async.ts"],"names":[],"mappings":"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"}
|