Files
Matias Chomicki baffc3d948 fix(elasticsearch): remove deprecated elastic versions (#54632)
* fix(elasticsearch): remove deprecated elastic versions

* fix(elasticsearch): make 8 the default and fallback version
2022-09-06 09:42:39 -04:00

57 lines
1.8 KiB
TypeScript

import { render, screen } from '@testing-library/react';
import React from 'react';
import { ConfigEditor } from './ConfigEditor';
import { createDefaultConfigOptions } from './mocks';
describe('ConfigEditor', () => {
it('should render without error', () => {
expect(() =>
render(<ConfigEditor onOptionsChange={() => {}} options={createDefaultConfigOptions()} />)
).not.toThrow();
});
it('should render all parts of the config', () => {
render(<ConfigEditor onOptionsChange={() => {}} options={createDefaultConfigOptions()} />);
// Check DataSourceHttpSettings are rendered
expect(screen.getByRole('heading', { name: 'HTTP' })).toBeInTheDocument();
// Check ElasticDetails are rendered
expect(screen.getByText('Elasticsearch details')).toBeInTheDocument();
// Check LogsConfig are rendered
expect(screen.getByText('Logs')).toBeInTheDocument();
});
it('should set defaults', () => {
const mockOnOptionsChange = jest.fn();
const options = createDefaultConfigOptions();
// @ts-ignore
delete options.jsonData.esVersion;
// @ts-ignore
delete options.jsonData.timeField;
delete options.jsonData.maxConcurrentShardRequests;
render(<ConfigEditor onOptionsChange={mockOnOptionsChange} options={options} />);
expect(mockOnOptionsChange).toHaveBeenCalledWith(
expect.objectContaining({
jsonData: expect.objectContaining({
esVersion: '8.0.0',
timeField: '@timestamp',
maxConcurrentShardRequests: 5,
}),
})
);
});
it('should not apply default if values are set', () => {
const mockOnOptionsChange = jest.fn();
render(<ConfigEditor onOptionsChange={mockOnOptionsChange} options={createDefaultConfigOptions()} />);
expect(mockOnOptionsChange).toHaveBeenCalledTimes(0);
});
});