X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/ecfd85a34f5852c160a25ab61bc5c38059927c56..d1c2611350e47527730f6d3b226b998abf15a607:/src/models/user.test.ts diff --git a/src/models/user.test.ts b/src/models/user.test.ts index d313ef4e..30f82cf1 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); }) });