server/api/api/v1/statuses/:id/favourited_by.test.ts
2025-03-22 17:32:46 +01:00

43 lines
1.3 KiB
TypeScript

import { afterAll, beforeAll, describe, expect, test } from "bun:test";
import { generateClient, getTestStatuses, getTestUsers } from "~/tests/utils";
const { users, deleteUsers } = await getTestUsers(5);
const timeline = (await getTestStatuses(5, users[0])).toReversed();
afterAll(async () => {
await deleteUsers();
});
beforeAll(async () => {
await using client = await generateClient(users[1]);
for (const status of timeline) {
await client.favouriteStatus(status.id);
}
});
// /api/v1/statuses/:id/favourited_by
describe("/api/v1/statuses/:id/favourited_by", () => {
test("should return 401 if not authenticated", async () => {
await using client = await generateClient();
const { ok, raw } = await client.getStatusFavouritedBy(timeline[0].id);
expect(ok).toBe(false);
expect(raw.status).toBe(401);
});
test("should return 200 with users", async () => {
await using client = await generateClient(users[0]);
const { data, ok } = await client.getStatusFavouritedBy(timeline[0].id);
expect(ok).toBe(true);
expect(data).toBeArrayOfSize(1);
expect(data.length).toBe(1);
expect(data[0].id).toBe(users[1].id);
expect(data[0].username).toBe(users[1].data.username);
});
});