mirror of
https://github.com/grafana/grafana.git
synced 2025-08-01 05:11:50 +08:00

* add group to role DisplayName to make searching easier * clean up more role names; add filtered display text when fetching * pass filter state into role menu to decide how to display role name * prop name better describes what it does
49 lines
1.1 KiB
TypeScript
49 lines
1.1 KiB
TypeScript
import { render, screen } from '@testing-library/react';
|
|
import userEvent from '@testing-library/user-event';
|
|
|
|
import { OrgRole } from '@grafana/data';
|
|
|
|
import { RolePickerBadges } from './RolePickerBadges';
|
|
|
|
const props = {
|
|
disabled: false,
|
|
user: {
|
|
login: 'admin',
|
|
email: 'email@example.com',
|
|
uid: 'uid',
|
|
avatarUrl: 'avatarURL',
|
|
lastSeenAt: 'lastSeenAt',
|
|
lastSeenAtAge: 'lastSeenAtAge',
|
|
name: 'administrator',
|
|
orgId: 1,
|
|
role: OrgRole.Admin,
|
|
roles: [
|
|
{
|
|
uid: 'uid',
|
|
name: 'admin',
|
|
displayName: 'Admin',
|
|
filteredDisplayName: 'group:Admin',
|
|
description: 'description',
|
|
group: 'group',
|
|
global: true,
|
|
version: 1,
|
|
created: 'created',
|
|
updated: 'updated',
|
|
},
|
|
],
|
|
userId: 1,
|
|
isDisabled: false,
|
|
},
|
|
};
|
|
|
|
describe('RolePickerBadges', () => {
|
|
it('should render', async () => {
|
|
render(<RolePickerBadges {...props} />);
|
|
|
|
expect(screen.getByText(/\+1/i)).toBeInTheDocument();
|
|
|
|
expect(screen.getByText(/Admin/i)).toBeInTheDocument();
|
|
await userEvent.click(screen.getByText('Admin'));
|
|
});
|
|
});
|