1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-24 01:18:01 +02:00
unleash.unleash/frontend/src/component/menu/Header/InviteLink/InviteLinkButton/InviteLinkButton.test.tsx
2023-10-11 14:31:32 +03:00

35 lines
1.0 KiB
TypeScript

import { render } from 'utils/testRenderer';
import { screen } from '@testing-library/react';
import React from 'react';
import InviteLinkButton from './InviteLinkButton';
import { AccessProviderMock } from 'component/providers/AccessProvider/AccessProviderMock';
import { ADMIN } from 'component/providers/AccessProvider/permissions';
import { testServerRoute, testServerSetup } from 'utils/testServer';
const server = testServerSetup();
const setupApi = () => {
testServerRoute(server, '/api/admin/ui-config', {
flags: {
newInviteLink: true,
},
});
};
test('Do not show button to non admins', async () => {
setupApi();
render(
<AccessProviderMock permissions={[]}>
<InviteLinkButton />
</AccessProviderMock>,
);
expect(screen.queryByLabelText('Invite users')).not.toBeInTheDocument();
});
test('Show button to non admins', async () => {
setupApi();
render(<InviteLinkButton />, { permissions: [{ permission: ADMIN }] });
await screen.findByLabelText('Invite users');
});