import {render, screen} from 'sentry-test/reactTestingLibrary'; import EventOrGroupTitle from 'sentry/components/eventOrGroupTitle'; import {BaseGroup, EventOrGroupType, IssueCategory} from 'sentry/types'; describe('EventOrGroupTitle', function () { const data = { metadata: { type: 'metadata type', directive: 'metadata directive', uri: 'metadata uri', }, culprit: 'culprit', }; it('renders with subtitle when `type = error`', function () { const wrapper = render( ); expect(wrapper.container).toSnapshot(); }); it('renders with subtitle when `type = csp`', function () { const wrapper = render( ); expect(wrapper.container).toSnapshot(); }); it('renders with no subtitle when `type = default`', function () { const wrapper = render( ); expect(wrapper.container).toSnapshot(); }); it('renders with title override', function () { const routerContext = TestStubs.routerContext([ {organization: TestStubs.Organization({features: ['custom-event-title']})}, ]); render( , {context: routerContext} ); expect(screen.getByText('metadata title')).toBeInTheDocument(); }); it('does not render stack trace when issueCategory is performance', () => { render( ); expect(screen.queryByTestId('stacktrace-preview')).not.toBeInTheDocument(); }); describe('performance issue list', () => { const perfData = { title: 'Hello', type: EventOrGroupType.TRANSACTION, issueCategory: IssueCategory.PERFORMANCE, metadata: { title: 'N+1 Query', }, culprit: 'transaction name', } as BaseGroup; it('should correctly render title', () => { const routerContext = TestStubs.routerContext([ {organization: TestStubs.Organization({features: ['custom-event-title']})}, ]); render(, {context: routerContext}); expect(screen.getByText('N+1 Query')).toBeInTheDocument(); expect(screen.getByText('transaction name')).toBeInTheDocument(); }); }); });