import { subDays } from 'date-fns' import { factory } from 'factory-bot' import { datatype, date, finance, random } from 'faker' import { DiscountCoupon } from '../../src/models' import { DiscountTypes } from '../../src/models/enums/discount_type.enum' factory.define( 'discount_coupon', DiscountCoupon, { id: () => datatype.uuid(), name: () => `Coupon ${datatype.number()}`, code: () => random.word(), discountAmount: () => finance.amount(1, 99), discountType: () => DiscountTypes.PERCENTAGE, enabled: true, createdAt: date.past, beginsAt: date.past, }, DiscountCoupon, ) factory.extend('discount_coupon', 'discount_coupon:expired', { beginsAt: () => subDays(new Date(), 10), endsAt: () => subDays(new Date(), 2), }) export { factory }