2022-06-20 13:46:11 +01:00
|
|
|
import { screen, render } from '@testing-library/react';
|
2022-04-22 14:33:13 +01:00
|
|
|
import React from 'react';
|
|
|
|
|
|
2022-06-20 13:46:11 +01:00
|
|
|
import { selectors } from '@grafana/e2e-selectors';
|
|
|
|
|
|
2022-07-20 09:25:09 +02:00
|
|
|
import { ButtonRow, Props } from './ButtonRow';
|
2021-09-01 15:18:17 +02:00
|
|
|
|
2018-11-01 13:45:52 +01:00
|
|
|
const setup = (propOverrides?: object) => {
|
|
|
|
|
const props: Props = {
|
2021-12-15 12:08:15 +01:00
|
|
|
canSave: false,
|
2023-05-01 12:16:16 +02:00
|
|
|
canDelete: true,
|
|
|
|
|
onDelete: jest.fn(),
|
2018-11-01 13:45:52 +01:00
|
|
|
onSubmit: jest.fn(),
|
2019-02-12 08:45:21 +01:00
|
|
|
onTest: jest.fn(),
|
2018-11-01 13:45:52 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Object.assign(props, propOverrides);
|
|
|
|
|
|
2022-06-20 13:46:11 +01:00
|
|
|
return render(<ButtonRow {...props} />);
|
2018-11-01 13:45:52 +01:00
|
|
|
};
|
|
|
|
|
|
2022-07-20 09:25:09 +02:00
|
|
|
describe('<ButtonRow>', () => {
|
2018-11-01 13:45:52 +01:00
|
|
|
it('should render component', () => {
|
2022-06-20 13:46:11 +01:00
|
|
|
setup();
|
2018-11-01 13:45:52 +01:00
|
|
|
|
2023-05-01 12:16:16 +02:00
|
|
|
expect(screen.getByTestId(selectors.pages.DataSource.delete)).toBeInTheDocument();
|
2023-04-28 15:57:17 +02:00
|
|
|
expect(screen.getByText('Test')).toBeInTheDocument();
|
2018-11-01 13:45:52 +01:00
|
|
|
});
|
2023-05-23 09:18:00 -04:00
|
|
|
|
2022-06-20 13:46:11 +01:00
|
|
|
it('should render save & test', () => {
|
|
|
|
|
setup({ canSave: true });
|
2018-11-01 13:45:52 +01:00
|
|
|
|
2023-05-01 12:16:16 +02:00
|
|
|
expect(screen.getByTestId(selectors.pages.DataSource.saveAndTest)).toBeInTheDocument();
|
2018-11-01 13:45:52 +01:00
|
|
|
});
|
|
|
|
|
});
|