Files
outline/server/models/View.test.ts
Tom Moor cc591ebc66 Conversion of User to event system (#9741)
* Conversion of User to event system

* fix

* warning

* fixes

* Skip lastActiveAt in changeset

* fix: Skip count in view changeset

* refactor: Remove userDestroyer

* refactor: Remove userSuspender

* refactor: Remove userUnsuspender

* tests
2025-07-27 13:15:21 -04:00

51 lines
1.4 KiB
TypeScript

import { createContext } from "@server/context";
import { buildTeam, buildDocument, buildUser } from "@server/test/factories";
import View from "./View";
describe("View", () => {
describe("findByDocument", () => {
it("should return list of views", async () => {
const team = await buildTeam();
const user = await buildUser({
teamId: team.id,
});
const document = await buildDocument({
teamId: team.id,
});
await View.incrementOrCreate(createContext({ user }), {
documentId: document.id,
userId: user.id,
});
const views = await View.findByDocument(document.id, {
includeSuspended: false,
});
expect(views.length).toEqual(1);
expect(views[0].user.id).toEqual(user.id);
});
it("should not return views for deleted users", async () => {
const team = await buildTeam();
const user = await buildUser({
teamId: team.id,
});
const document = await buildDocument({
teamId: team.id,
});
await View.incrementOrCreate(createContext({ user }), {
documentId: document.id,
userId: user.id,
});
await user.destroy({ hooks: false });
const views = await View.findByDocument(document.id, {
includeSuspended: false,
});
expect(views.length).toEqual(0);
});
});
});