campus-errand/miniapp/node_modules/fast-check/lib/arbitrary/_internals/LazyArbitrary.js
2026-03-01 05:01:47 +08:00

27 lines
979 B
JavaScript

import { Arbitrary } from '../../check/arbitrary/definition/Arbitrary.js';
export class LazyArbitrary extends Arbitrary {
constructor(name) {
super();
this.name = name;
this.underlying = null;
}
generate(mrng, biasFactor) {
if (this.underlying === null) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.generate(mrng, biasFactor);
}
canShrinkWithoutContext(value) {
if (this.underlying === null) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.canShrinkWithoutContext(value);
}
shrink(value, context) {
if (this.underlying === null) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.shrink(value, context);
}
}