bot-api/tests/populateDatabase.ts

44 lines
1.0 KiB
TypeScript

import authModel from "../src/models/AuthModel";
import imageModel from "../src/models/ImageModel";
import { faker } from "@faker-js/faker";
import { UniqueEnforcer } from "enforce-unique";
const uniqueEnforcer = new UniqueEnforcer();
export default async function () {
const images = faker.helpers.multiple(
() => ({
url: uniqueEnforcer.enforce(faker.internet.url),
status: faker.helpers.arrayElement([
"available",
"unavailable",
"consumed",
]),
tags: faker.helpers.arrayElements(
[
"2girls",
"sleeping",
"touhou",
"pokemon",
"closed_eyes",
"yume_nikki",
"waifu",
"computer",
"party",
"yuru_camp",
],
{ min: 0, max: 5 }
),
}),
{ count: { min: 5, max: 50 } }
);
// Wait until all images are inserted
await Promise.allSettled(images.map((image) => imageModel.create(image)));
await authModel.create({
app: "tester",
secret: "test",
});
}