packageData.spec.tsx 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import {DataScrubbingRelayPiiConfig} from 'sentry-fixture/dataScrubbingRelayPiiConfig';
  2. import {Event as EventFixture} from 'sentry-fixture/event';
  3. import {render, screen, userEvent} from 'sentry-test/reactTestingLibrary';
  4. import {textWithMarkupMatcher} from 'sentry-test/utils';
  5. import {EventPackageData} from 'sentry/components/events/packageData';
  6. describe('EventPackageData', function () {
  7. it('display redacted data', async function () {
  8. const event = EventFixture({
  9. packages: {
  10. certifi: '',
  11. pip: '18.0',
  12. python: '2.7.15',
  13. 'sentry-sdk': '0.3.1',
  14. setuptools: '40.0.0',
  15. urllib3: '1.23',
  16. wheel: '0.31.1',
  17. wsgiref: '0.1.2',
  18. },
  19. _meta: {
  20. packages: {
  21. certifi: {'': {rem: [['organization:1', 'x']]}},
  22. },
  23. },
  24. });
  25. render(<EventPackageData event={event} />, {
  26. organization: {
  27. relayPiiConfig: JSON.stringify(DataScrubbingRelayPiiConfig()),
  28. },
  29. });
  30. expect(screen.getByText(/redacted/)).toBeInTheDocument();
  31. await userEvent.hover(screen.getByText(/redacted/));
  32. expect(
  33. await screen.findByText(
  34. textWithMarkupMatcher(
  35. "Removed because of the data scrubbing rule [Mask] [Credit card numbers] from [$message] in your organization's settings"
  36. )
  37. )
  38. ).toBeInTheDocument(); // tooltip description
  39. });
  40. });