X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/ecfd85a34f5852c160a25ab61bc5c38059927c56..082c1782d96a4b1c897df64d9b325d102a5c1144:/src/models/user.test.ts diff --git a/src/models/user.test.ts b/src/models/user.test.ts index d313ef4eb2..4fab59d5db 100644 --- a/src/models/user.test.ts +++ b/src/models/user.test.ts @@ -5,13 +5,10 @@ import { User, getUserDisplayName } from './user'; describe('User', () => { - - beforeEach(() => { - }); - it('gets the user display name', () => { type UserCase = { caseName: string; + withEmail?: boolean; user: User; expect: string; }; @@ -27,6 +24,18 @@ describe('User', () => { }, expect: 'Some User' }, + { + caseName: 'Full data available (with email)', + withEmail: true, + user: { + email: 'someuser@example.com', username: 'someuser', + firstName: 'Some', lastName: 'User', + uuid: 'zzzzz-tpzed-someusersuuid', + ownerUuid: 'zzzzz-tpzed-someusersowneruuid', + prefs: {}, isAdmin: false, isActive: true + }, + expect: 'Some User <>' + }, { caseName: 'Missing first name', user: { @@ -60,6 +69,18 @@ describe('User', () => { }, expect: 'someuser@example.com' }, + { + caseName: 'Missing first & last names (with email)', + withEmail: true, + user: { + email: 'someuser@example.com', username: 'someuser', + firstName: '', lastName: '', + uuid: 'zzzzz-tpzed-someusersuuid', + ownerUuid: 'zzzzz-tpzed-someusersowneruuid', + prefs: {}, isAdmin: false, isActive: true + }, + expect: 'someuser@example.com' + }, { caseName: 'Missing first & last names, and email address', user: { @@ -71,6 +92,18 @@ describe('User', () => { }, expect: 'someuser' }, + { + caseName: 'Missing first & last names, and email address (with email)', + withEmail: true, + user: { + email: '', username: 'someuser', + firstName: '', lastName: '', + uuid: 'zzzzz-tpzed-someusersuuid', + ownerUuid: 'zzzzz-tpzed-someusersowneruuid', + prefs: {}, isAdmin: false, isActive: true + }, + expect: 'someuser' + }, { caseName: 'Missing all data (should not happen)', user: { @@ -84,7 +117,7 @@ describe('User', () => { }, ]; testCases.forEach(c => { - const dispName = getUserDisplayName(c.user); + const dispName = getUserDisplayName(c.user, c.withEmail); expect(dispName).toEqual(c.expect); }) });