eventEvidence.spec.tsx 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import {Event as EventFixture} from 'sentry-fixture/event';
  2. import {render, screen} from 'sentry-test/reactTestingLibrary';
  3. import {EventEvidence} from 'sentry/components/events/eventEvidence';
  4. describe('EventEvidence', () => {
  5. const event = EventFixture({
  6. occurrence: {
  7. evidenceData: {},
  8. evidenceDisplay: [
  9. {
  10. name: 'Transaction',
  11. value: '/api/0/transaction-test-endpoint/',
  12. important: false,
  13. },
  14. ],
  15. fingerprint: [],
  16. id: '',
  17. issueTitle: '',
  18. resourceId: '',
  19. subtitle: '',
  20. detectionTime: '',
  21. eventId: '',
  22. },
  23. });
  24. const defaultProps = {
  25. event,
  26. group: TestStubs.Group(),
  27. project: TestStubs.Project({slug: 'project-slug'}),
  28. };
  29. it('renders nothing when evidence display is empty', () => {
  30. const {container} = render(
  31. <EventEvidence
  32. {...defaultProps}
  33. event={EventFixture({occurrence: {evidenceDisplay: []}})}
  34. />
  35. );
  36. expect(container).toBeEmptyDOMElement();
  37. });
  38. it('renders evidenceDisplay data in a key/value table', () => {
  39. render(<EventEvidence {...defaultProps} />);
  40. expect(screen.getByRole('cell', {name: 'Transaction'})).toBeInTheDocument();
  41. expect(
  42. screen.getByRole('cell', {
  43. name: '/api/0/transaction-test-endpoint/',
  44. })
  45. ).toBeInTheDocument();
  46. });
  47. });