From 1dc625f9e867f3469a4d602857c64f3f1ba6bc07 Mon Sep 17 00:00:00 2001 From: kolaente Date: Sat, 21 Feb 2026 22:28:50 +0100 Subject: [PATCH] test: add unit tests for getDisplayName --- frontend/src/models/user.test.ts | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 frontend/src/models/user.test.ts diff --git a/frontend/src/models/user.test.ts b/frontend/src/models/user.test.ts new file mode 100644 index 000000000..bb004c500 --- /dev/null +++ b/frontend/src/models/user.test.ts @@ -0,0 +1,32 @@ +import {describe, it, expect} from 'vitest' +import {getDisplayName} from './user' +import type {IUser} from '@/modelTypes/IUser' + +function makeUser(overrides: Partial = {}): IUser { + return { + id: 1, + email: 'test@example.com', + username: 'testuser', + name: '', + exp: 0, + type: 1, + created: new Date(), + updated: new Date(), + settings: {} as IUser['settings'], + isLocalUser: true, + deletionScheduledAt: null, + ...overrides, + } +} + +describe('getDisplayName', () => { + it('should return the name when set', () => { + const user = makeUser({name: 'Jane Doe'}) + expect(getDisplayName(user)).toBe('Jane Doe') + }) + + it('should fall back to username when name is empty', () => { + const user = makeUser({name: '', username: 'janedoe'}) + expect(getDisplayName(user)).toBe('janedoe') + }) +})