21 lines
987 B
JavaScript
21 lines
987 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.FuzzStrategy = void 0;
|
|
const ValueObject_1 = require("../../../../shared/domain/ValueObject");
|
|
class FuzzStrategy extends ValueObject_1.ValueObject {
|
|
static empty() { return new FuzzStrategy({ value: 'empty' }); }
|
|
static oversized() { return new FuzzStrategy({ value: 'oversized' }); }
|
|
static specialChars() { return new FuzzStrategy({ value: 'special_chars' }); }
|
|
static typeMismatch() { return new FuzzStrategy({ value: 'type_mismatch' }); }
|
|
static boundary() { return new FuzzStrategy({ value: 'boundary' }); }
|
|
static fromString(s) {
|
|
if (!FuzzStrategy.ALL.includes(s)) {
|
|
throw new Error(`Invalid fuzz strategy: ${s}`);
|
|
}
|
|
return new FuzzStrategy({ value: s });
|
|
}
|
|
get value() { return this.props.value; }
|
|
}
|
|
exports.FuzzStrategy = FuzzStrategy;
|
|
FuzzStrategy.ALL = ['empty', 'oversized', 'special_chars', 'type_mismatch', 'boundary'];
|