Move bulk of webhook logic to plugin (#4866)
* Move bulk of webhook logic to plugin * Re-enable cleanup task * cron tasks
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import { subDays } from "date-fns";
|
||||
import { WebhookDelivery } from "@server/models";
|
||||
import { buildWebhookDelivery } from "@server/test/factories";
|
||||
import { setupTestDatabase } from "@server/test/support";
|
||||
import CleanupWebhookDeliveriesTask from "./CleanupWebhookDeliveriesTask";
|
||||
|
||||
setupTestDatabase();
|
||||
|
||||
const deliveryExists = async (delivery: WebhookDelivery) => {
|
||||
const results = await WebhookDelivery.findOne({ where: { id: delivery.id } });
|
||||
return !!results;
|
||||
};
|
||||
|
||||
describe("CleanupWebookDeliveriesTask", () => {
|
||||
it("should delete Webhook Deliveries older than 1 week", async () => {
|
||||
const brandNewWebhookDelivery = await buildWebhookDelivery({
|
||||
createdAt: new Date(),
|
||||
});
|
||||
const newishWebhookDelivery = await buildWebhookDelivery({
|
||||
createdAt: subDays(new Date(), 5),
|
||||
});
|
||||
const oldWebhookDelivery = await buildWebhookDelivery({
|
||||
createdAt: subDays(new Date(), 8),
|
||||
});
|
||||
|
||||
const task = new CleanupWebhookDeliveriesTask();
|
||||
await task.perform();
|
||||
|
||||
expect(await deliveryExists(brandNewWebhookDelivery)).toBe(true);
|
||||
expect(await deliveryExists(newishWebhookDelivery)).toBe(true);
|
||||
expect(await deliveryExists(oldWebhookDelivery)).toBe(false);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user