inviteMembersModalview.spec.tsx 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import type {ComponentProps} from 'react';
  2. import styled from '@emotion/styled';
  3. import {render, screen} from 'sentry-test/reactTestingLibrary';
  4. import InviteMembersModalView from 'sentry/components/modals/inviteMembersModal/inviteMembersModalview';
  5. describe('InviteMembersModalView', function () {
  6. const styledWrapper = styled(c => c.children);
  7. const modalProps: ComponentProps<typeof InviteMembersModalView> = {
  8. Footer: styledWrapper(),
  9. addInviteRow: () => {},
  10. canSend: true,
  11. closeModal: () => {},
  12. complete: false,
  13. headerInfo: null,
  14. inviteStatus: {},
  15. invites: [],
  16. member: undefined,
  17. pendingInvites: [],
  18. removeInviteRow: () => {},
  19. reset: () => {},
  20. sendInvites: () => {},
  21. sendingInvites: false,
  22. setEmails: () => {},
  23. setRole: () => {},
  24. setTeams: () => {},
  25. willInvite: false,
  26. };
  27. it('renders', function () {
  28. render(<InviteMembersModalView {...modalProps} />);
  29. expect(screen.getByText('Invite New Members')).toBeInTheDocument();
  30. expect(screen.getByText('Add another')).toBeInTheDocument();
  31. });
  32. it('renders with error', function () {
  33. const modalPropsWithError = {
  34. ...modalProps,
  35. error: 'This is an error message',
  36. };
  37. render(<InviteMembersModalView {...modalPropsWithError} />);
  38. // Check that the Alert component renders with the provided error message
  39. expect(screen.getByText('This is an error message')).toBeInTheDocument();
  40. });
  41. });