fast-check
Version:
Property based testing framework for JavaScript (like QuickCheck)
31 lines (30 loc) • 1.11 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.LazyArbitrary = void 0;
const Arbitrary_1 = require("../../check/arbitrary/definition/Arbitrary");
class LazyArbitrary extends Arbitrary_1.Arbitrary {
constructor(name) {
super();
this.name = name;
this.underlying = null;
}
generate(mrng, biasFactor) {
if (!this.underlying) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.generate(mrng, biasFactor);
}
canShrinkWithoutContext(value) {
if (!this.underlying) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.canShrinkWithoutContext(value);
}
shrink(value, context) {
if (!this.underlying) {
throw new Error(`Lazy arbitrary ${JSON.stringify(this.name)} not correctly initialized`);
}
return this.underlying.shrink(value, context);
}
}
exports.LazyArbitrary = LazyArbitrary;
;