X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/075dd4fd268311d5e28029ad3372cd5efb000c4d..695ee8df0aeadd5eb788ca29da6450813880da76:/src/models/user.test.ts diff --git a/src/models/user.test.ts b/src/models/user.test.ts index baa86da9..4fab59d5 100644 --- a/src/models/user.test.ts +++ b/src/models/user.test.ts @@ -8,6 +8,7 @@ describe('User', () => { it('gets the user display name', () => { type UserCase = { caseName: string; + withEmail?: boolean; user: User; expect: string; }; @@ -23,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: { @@ -56,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: { @@ -67,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: { @@ -80,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); }) });