perf: reduce memory usage upon running server tests (#3949)
* perf: reduce memory usage upon running server tests * perf: plug leaks in server/routes * perf: plug leaks in server/scripts * perf: plug leaks in server/policies * perf: plug leaks in server/models * perf: plug leaks in server/middlewares * perf: plug leaks in server/commands * fix: missing await on db.flush * perf: plug leaks in server/queues * chore: remove unused legacy funcs * fix: await on db.flush * perf: await on GC to run in between tests * fix: remove db refs * fix: revert embeds * perf: plug leaks in shared/i18n
This commit is contained in:
@@ -1,12 +1,18 @@
|
||||
import { Backlink } from "@server/models";
|
||||
import { buildDocument } from "@server/test/factories";
|
||||
import { flushdb } from "@server/test/support";
|
||||
import { getTestDatabase } from "@server/test/support";
|
||||
import BacklinksProcessor from "./BacklinksProcessor";
|
||||
|
||||
const ip = "127.0.0.1";
|
||||
|
||||
beforeEach(() => flushdb());
|
||||
beforeEach(jest.resetAllMocks);
|
||||
const db = getTestDatabase();
|
||||
|
||||
afterAll(db.disconnect);
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.flush();
|
||||
jest.resetAllMocks();
|
||||
});
|
||||
|
||||
describe("documents.publish", () => {
|
||||
test("should create new backlink records", async () => {
|
||||
@@ -161,7 +167,7 @@ describe("documents.update", () => {
|
||||
ip,
|
||||
});
|
||||
document.text = `First link is gone
|
||||
|
||||
|
||||
[this is a another link](${yetAnotherDocument.url})`;
|
||||
await document.save();
|
||||
|
||||
|
||||
@@ -5,14 +5,20 @@ import {
|
||||
buildCollection,
|
||||
buildUser,
|
||||
} from "@server/test/factories";
|
||||
import { flushdb } from "@server/test/support";
|
||||
import { getTestDatabase } from "@server/test/support";
|
||||
import NotificationsProcessor from "./NotificationsProcessor";
|
||||
|
||||
jest.mock("@server/emails/templates/DocumentNotificationEmail");
|
||||
const ip = "127.0.0.1";
|
||||
|
||||
beforeEach(() => flushdb());
|
||||
beforeEach(jest.resetAllMocks);
|
||||
const db = getTestDatabase();
|
||||
|
||||
afterAll(db.disconnect);
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.flush();
|
||||
jest.resetAllMocks();
|
||||
});
|
||||
|
||||
describe("documents.publish", () => {
|
||||
test("should not send a notification to author", async () => {
|
||||
|
||||
@@ -1,12 +1,18 @@
|
||||
import { Revision } from "@server/models";
|
||||
import { buildDocument } from "@server/test/factories";
|
||||
import { flushdb } from "@server/test/support";
|
||||
import { getTestDatabase } from "@server/test/support";
|
||||
import RevisionsProcessor from "./RevisionsProcessor";
|
||||
|
||||
const ip = "127.0.0.1";
|
||||
|
||||
beforeEach(() => flushdb());
|
||||
beforeEach(jest.resetAllMocks);
|
||||
const db = getTestDatabase();
|
||||
|
||||
afterAll(db.disconnect);
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.flush();
|
||||
jest.resetAllMocks();
|
||||
});
|
||||
|
||||
describe("documents.update.debounced", () => {
|
||||
test("should create a revision", async () => {
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
import { buildUser, buildWebhookSubscription } from "@server/test/factories";
|
||||
import { flushdb } from "@server/test/support";
|
||||
import { getTestDatabase } from "@server/test/support";
|
||||
import { UserEvent } from "@server/types";
|
||||
import DeliverWebhookTask from "../tasks/DeliverWebhookTask";
|
||||
import WebhookProcessor from "./WebhookProcessor";
|
||||
|
||||
jest.mock("@server/queues/tasks/DeliverWebhookTask");
|
||||
const ip = "127.0.0.1";
|
||||
|
||||
beforeEach(() => flushdb());
|
||||
beforeEach(() => {
|
||||
const db = getTestDatabase();
|
||||
|
||||
afterAll(db.disconnect);
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.flush();
|
||||
jest.resetAllMocks();
|
||||
});
|
||||
|
||||
const ip = "127.0.0.1";
|
||||
|
||||
describe("WebhookProcessor", () => {
|
||||
test("it schedules a delivery for the event", async () => {
|
||||
const subscription = await buildWebhookSubscription({
|
||||
|
||||
Reference in New Issue
Block a user