import { faker } from "@faker-js/faker"; const MAX = 10; function createCronJob() { return { guid: faker.string.uuid(), cronjobName: faker.helpers.arrayElement([ "cronjob-mdms-pull-meter-alert", "DAP PERCENTILE DATA", "DAP WEIS DATA", ]), fileName: `DAP_WEIS_${faker.date.anytime().toTimeString()}.txt`, scheduleDateTime: faker.date.anytime(), fileReceivedTime: faker.date.anytime(), fileIngestionTime: faker.date.anytime(), totalRecords: faker.number.int({ min: 0, max: 40 }), totalFailedRecords: faker.number.int({ min: 0, max: 40 }), errorDetail: faker.helpers.arrayElement([ null, "Header invalid", "Connect sftp failed…", "File incomplete ingestion", ]), jobFiles: faker.helpers.multiple( () => ({ guid: faker.string.uuid(), fileName: `FILE NAME ${faker.number.int()}.txt`, processTime: Math.floor(faker.date.anytime().getTime() / 1000), noOfRecordsSuccess: faker.number.int({ min: 2, max: 500 }), noOfRecordsInvalid: faker.number.int({ min: 1, max: 50 }), fileStatus: faker.helpers.arrayElement([ "SUCCESS", "FAILED (STAGING)", "CANCEL", ]), errorDetail: { message: faker.helpers.arrayElement([ "Header invalid", null, "File incomplete ingestion", ]), rejectedRecordsFile: `DAP_WEIS_${faker.date .anytime() .toTimeString()}_${faker.string.uuid()}.txt`, }, }), { count: faker.number.int({ min: 1, max: 5 }), } ), }; } export default () => { const data = { status: 200, data: { totalCronjobRecords: MAX, cronjobLogList: faker.helpers.multiple(createCronJob, { count: MAX }), }, }; return data; };