import {OrganizationFixture} from 'sentry-fixture/organization';
import {
render,
renderGlobalModal,
screen,
userEvent,
} from 'sentry-test/reactTestingLibrary';
import {PageHeaderActions} from 'sentry/views/metrics/pageHeaderActions';
jest.mock('sentry/views/metrics/useCreateDashboard');
describe('Metrics Page Header Actions', function () {
describe('add metric buttons', function () {
it('display "add custom metrics" button', async function () {
const addCustomMetric = jest.fn();
render();
const button = screen.getByRole('button', {name: 'Add Custom Metrics'});
expect(button).toBeInTheDocument();
await userEvent.click(button);
expect(addCustomMetric).toHaveBeenCalled();
});
it('display "Create Metric" button', async function () {
render(
jest.fn()} />,
{
organization: OrganizationFixture({
features: [
'custom-metrics-extraction-rule',
'custom-metrics-extraction-rule-ui',
],
}),
}
);
renderGlobalModal();
const button = screen.getByRole('button', {name: 'Create Metric'});
expect(button).toBeInTheDocument();
await userEvent.click(button);
expect(
await screen.findByRole('heading', {name: 'Create Metric'})
).toBeInTheDocument();
});
});
});