This repository has no description
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849// SPDX-License-Identifier: AGPL-3.0-or-later
import {beforeEach, describe, expect, test} from 'vitest';import {createTestAccount} from '../../auth/tests/AuthTestUtils';import {type ApiTestHarness, createApiTestHarness} from '../../test/ApiTestHarness';import {HTTP_STATUS} from '../../test/TestConstants';import {createBuilder} from '../../test/TestRequestBuilder';import {fetchUserNote, setUserNote} from './UserTestUtils';
describe('User Note Lifecycle', () => { let harness: ApiTestHarness; beforeEach(async () => { harness = await createApiTestHarness(); }); test('user can set and retrieve note for another user', async () => { const user = await createTestAccount(harness); const target = await createTestAccount(harness); const noteContent = 'This is a test note'; await setUserNote(harness, user.token, target.userId, noteContent); const {json} = await fetchUserNote(harness, user.token, target.userId); const note = json as { note: string | null; }; expect(note.note).toBe(noteContent); }); test('user can update note for another user', async () => { const user = await createTestAccount(harness); const target = await createTestAccount(harness); await setUserNote(harness, user.token, target.userId, 'Initial note'); const updatedNote = 'Updated note content'; await setUserNote(harness, user.token, target.userId, updatedNote); const {json} = await fetchUserNote(harness, user.token, target.userId); const note = json as { note: string | null; }; expect(note.note).toBe(updatedNote); }); test('user can clear note for another user', async () => { const user = await createTestAccount(harness); const target = await createTestAccount(harness); await setUserNote(harness, user.token, target.userId, 'Note to clear'); await setUserNote(harness, user.token, target.userId, null); await createBuilder(harness, user.token) .get(`/users/@me/notes/${target.userId}`) .expect(HTTP_STATUS.NOT_FOUND) .execute(); });});