UNPKG

@hexadrop/value-object

Version:

Hexagonal architecture utils library

39 lines (30 loc) 979 B
import BooleanValueObject from './boolean.value-object'; class FakeBooleanValueObject extends BooleanValueObject {} class InvalidStringBooleanValueObject extends BooleanValueObject { constructor() { // @ts-expect-error - Testing purposes super('a'); } } class UndefinedStringBooleanValueObject extends BooleanValueObject { // eslint-disable-next-line typescript/no-useless-constructor -- Testing purposes constructor() { // @ts-expect-error - Testing purposes super(); } } export default class BooleanValueObjectMother { static create(value: boolean): BooleanValueObject { return new FakeBooleanValueObject(value); } static invalidWithString(): BooleanValueObject { return new InvalidStringBooleanValueObject(); } static invalidWithUndefined(): BooleanValueObject { return new UndefinedStringBooleanValueObject(); } static random(): BooleanValueObject { const value = Math.random() > 0.5; return BooleanValueObjectMother.create(value); } }