eventMessage.spec.tsx 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import {UserFixture} from 'sentry-fixture/user';
  2. import {render, screen} from 'sentry-test/reactTestingLibrary';
  3. import ConfigStore from 'sentry/stores/configStore';
  4. import {EventOrGroupType} from 'sentry/types/event';
  5. import EventMessage from './eventMessage';
  6. describe('EventMessage', () => {
  7. const defaultUser = UserFixture();
  8. beforeEach(() => {
  9. ConfigStore.init();
  10. });
  11. it('renders error message', () => {
  12. render(<EventMessage message="Test message" type={EventOrGroupType.ERROR} />);
  13. expect(screen.getByText('Test message')).toBeInTheDocument();
  14. });
  15. it('renders "No error message" when message is not provided', () => {
  16. render(<EventMessage message={null} type={EventOrGroupType.ERROR} />);
  17. expect(screen.getByText('(No error message)')).toBeInTheDocument();
  18. });
  19. it('renders error level indicator dot', () => {
  20. render(
  21. <EventMessage message="Test message" type={EventOrGroupType.ERROR} level="error" />
  22. );
  23. expect(screen.getByText('Level: Error')).toBeInTheDocument();
  24. });
  25. it('renders error level indicator text', () => {
  26. ConfigStore.set(
  27. 'user',
  28. UserFixture({
  29. ...defaultUser,
  30. options: {
  31. ...defaultUser.options,
  32. prefersIssueDetailsStreamlinedUI: true,
  33. },
  34. })
  35. );
  36. render(
  37. <EventMessage message="Test message" type={EventOrGroupType.ERROR} level="error" />
  38. );
  39. expect(screen.getByText('Error')).toBeInTheDocument();
  40. });
  41. it('renders unhandled tag', () => {
  42. render(
  43. <EventMessage message="Test message" type={EventOrGroupType.ERROR} showUnhandled />
  44. );
  45. expect(screen.getByText('Unhandled')).toBeInTheDocument();
  46. });
  47. });