mirror of
https://github.com/grafana/grafana.git
synced 2025-02-20 11:48:34 -06:00
* Replace DataSourcesListItem with Card * Add tests * Remove unused styles * Make card heading semi bold * Make heading semi-bold * Show type name instead of type id * Fix key warning * Update Card * Fix tests * Make typeName optional * remove styling that was just a test * Make typeName non-optional and fix tests * Update list key Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
30 lines
1020 B
TypeScript
30 lines
1020 B
TypeScript
import React from 'react';
|
|
import { render, screen } from '@testing-library/react';
|
|
import DataSourcesList from './DataSourcesList';
|
|
import { getMockDataSources } from './__mocks__/dataSourcesMocks';
|
|
import { LayoutModes } from '../../core/components/LayoutSelector/LayoutSelector';
|
|
|
|
const setup = () => {
|
|
const props = {
|
|
dataSources: getMockDataSources(3),
|
|
layoutMode: LayoutModes.Grid,
|
|
};
|
|
|
|
return render(<DataSourcesList {...props} />);
|
|
};
|
|
|
|
describe('DataSourcesList', () => {
|
|
it('should render list of datasources', () => {
|
|
setup();
|
|
expect(screen.getAllByRole('listitem')).toHaveLength(3);
|
|
expect(screen.getAllByRole('heading')).toHaveLength(3);
|
|
});
|
|
|
|
it('should render all elements in the list item', () => {
|
|
setup();
|
|
expect(screen.getByRole('heading', { name: 'dataSource-0' })).toBeInTheDocument();
|
|
expect(screen.getByRole('link', { name: 'dataSource-0 dataSource-0' })).toBeInTheDocument();
|
|
expect(screen.getByAltText('dataSource-0')).toBeInTheDocument();
|
|
});
|
|
});
|