diff --git a/apps/web/src/app/(portal)/admin/users/user-access-modal.test.tsx b/apps/web/src/app/(portal)/admin/users/user-access-modal.test.tsx index 681729f..a905a49 100644 --- a/apps/web/src/app/(portal)/admin/users/user-access-modal.test.tsx +++ b/apps/web/src/app/(portal)/admin/users/user-access-modal.test.tsx @@ -23,6 +23,10 @@ const messages: Record> = { '{module} direkt für {user} {granted, select, true {freigeben} other {entziehen}}', saveError: 'Freigabe konnte nicht gespeichert werden. Bitte erneut versuchen.', }, + 'admin.groups.members': { + sourceManual: 'Manuell', + sourceLdap: 'LDAP', + }, common: { loading: 'Laden...', close: 'Schliessen', @@ -252,4 +256,32 @@ describe('UserAccessModal', () => { expect(box).toHaveAccessibleName(); } }); + + it('shows the LDAP origin badge on a chip with source LDAP and the Manuell badge on source MANUAL', async () => { + vi.stubGlobal( + 'fetch', + vi.fn(() => + Promise.resolve({ + ok: true, + json: () => + Promise.resolve({ + groups: [ + { id: 'g1', name: 'Manuelle Gruppe', source: 'MANUAL' as const }, + { id: 'g2', name: 'LDAP-Gruppe', source: 'LDAP' as const }, + ], + modules: [], + }), + }), + ), + ); + + render(); + + await waitFor(() => { + expect(screen.getByText('Manuelle Gruppe')).toBeInTheDocument(); + }); + expect(screen.getByText('LDAP-Gruppe')).toBeInTheDocument(); + expect(screen.getByText('Manuell')).toBeInTheDocument(); + expect(screen.getByText('LDAP')).toBeInTheDocument(); + }); });